diff --git a/src/backend/base/langflow/initial_setup/starter_projects/Search agent.json b/src/backend/base/langflow/initial_setup/starter_projects/Search agent.json index 16bb2799af66..51e601332d6b 100644 --- a/src/backend/base/langflow/initial_setup/starter_projects/Search agent.json +++ b/src/backend/base/langflow/initial_setup/starter_projects/Search agent.json @@ -474,7 +474,7 @@ "show": true, "title_case": false, "type": "code", - "value": "from langchain_core.tools import StructuredTool\n\nfrom langflow.base.agents.agent import LCToolsAgentComponent\nfrom langflow.base.agents.events import ExceptionWithMessageError\nfrom langflow.base.models.model_input_constants import (\n ALL_PROVIDER_FIELDS,\n MODEL_DYNAMIC_UPDATE_FIELDS,\n MODEL_PROVIDERS_DICT,\n)\nfrom langflow.base.models.model_utils import get_model_name\nfrom langflow.components.helpers import CurrentDateComponent\nfrom langflow.components.helpers.memory import MemoryComponent\nfrom langflow.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom langflow.custom.custom_component.component import _get_component_toolkit\nfrom langflow.custom.utils import update_component_build_config\nfrom langflow.field_typing import Tool\nfrom langflow.io import BoolInput, DropdownInput, MultilineInput, Output\nfrom langflow.logging import logger\nfrom langflow.schema.dotdict import dotdict\nfrom langflow.schema.message import Message\n\n\ndef set_advanced_true(component_input):\n component_input.advanced = True\n return component_input\n\n\nclass AgentComponent(ToolCallingAgentComponent):\n display_name: str = \"Agent\"\n description: str = \"Define the agent's instructions, then enter a task to complete using tools.\"\n icon = \"bot\"\n beta = False\n name = \"Agent\"\n\n memory_inputs = [set_advanced_true(component_input) for component_input in MemoryComponent().inputs]\n\n inputs = [\n DropdownInput(\n name=\"agent_llm\",\n display_name=\"Model Provider\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*sorted(MODEL_PROVIDERS_DICT.keys()), \"Custom\"],\n value=\"OpenAI\",\n real_time_refresh=True,\n input_types=[],\n ),\n *MODEL_PROVIDERS_DICT[\"OpenAI\"][\"inputs\"],\n MultilineInput(\n name=\"system_prompt\",\n display_name=\"Agent Instructions\",\n info=\"System Prompt: Initial instructions and context provided to guide the agent's behavior.\",\n value=\"You are a helpful assistant that can use tools to answer questions and perform tasks.\",\n advanced=False,\n ),\n *LCToolsAgentComponent._base_inputs,\n *memory_inputs,\n BoolInput(\n name=\"add_current_date_tool\",\n display_name=\"Current Date\",\n advanced=True,\n info=\"If true, will add a tool to the agent that returns the current date.\",\n value=True,\n ),\n ]\n outputs = [Output(name=\"response\", display_name=\"Response\", method=\"message_response\")]\n\n async def message_response(self) -> Message:\n try:\n # Get LLM model and validate\n llm_model, display_name = self.get_llm()\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\n self.model_name = get_model_name(llm_model, display_name=display_name)\n\n # Get memory data\n self.chat_history = await self.get_memory_data()\n\n # Add current date tool if enabled\n if self.add_current_date_tool:\n if not isinstance(self.tools, list): # type: ignore[has-type]\n self.tools = []\n current_date_tool = (await CurrentDateComponent(**self.get_base_args()).to_toolkit()).pop(0)\n if not isinstance(current_date_tool, StructuredTool):\n msg = \"CurrentDateComponent must be converted to a StructuredTool\"\n raise TypeError(msg)\n self.tools.append(current_date_tool)\n\n # Validate tools\n if not self.tools:\n msg = \"Tools are required to run the agent. Please add at least one tool.\"\n raise ValueError(msg)\n\n # Set up and run agent\n self.set(\n llm=llm_model,\n tools=self.tools,\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=self.system_prompt,\n )\n agent = self.create_agent_runnable()\n return await self.run_agent(agent)\n\n except (ValueError, TypeError, KeyError) as e:\n logger.error(f\"{type(e).__name__}: {e!s}\")\n raise\n except ExceptionWithMessageError as e:\n logger.error(f\"ExceptionWithMessageError occurred: {e}\")\n raise\n except Exception as e:\n logger.error(f\"Unexpected error: {e!s}\")\n raise\n\n async def get_memory_data(self):\n memory_kwargs = {\n component_input.name: getattr(self, f\"{component_input.name}\") for component_input in self.memory_inputs\n }\n # filter out empty values\n memory_kwargs = {k: v for k, v in memory_kwargs.items() if v}\n\n return await MemoryComponent(**self.get_base_args()).set(**memory_kwargs).retrieve_messages()\n\n def get_llm(self):\n if not isinstance(self.agent_llm, str):\n return self.agent_llm, None\n\n try:\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if not provider_info:\n msg = f\"Invalid model provider: {self.agent_llm}\"\n raise ValueError(msg)\n\n component_class = provider_info.get(\"component_class\")\n display_name = component_class.display_name\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\", \"\")\n\n return self._build_llm_model(component_class, inputs, prefix), display_name\n\n except Exception as e:\n logger.error(f\"Error building {self.agent_llm} language model: {e!s}\")\n msg = f\"Failed to initialize language model: {e!s}\"\n raise ValueError(msg) from e\n\n def _build_llm_model(self, component, inputs, prefix=\"\"):\n model_kwargs = {input_.name: getattr(self, f\"{prefix}{input_.name}\") for input_ in inputs}\n return component.set(**model_kwargs).build_model()\n\n def set_component_params(self, component):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\")\n model_kwargs = {input_.name: getattr(self, f\"{prefix}{input_.name}\") for input_ in inputs}\n\n return component.set(**model_kwargs)\n return component\n\n def delete_fields(self, build_config: dotdict, fields: dict | list[str]) -> None:\n \"\"\"Delete specified fields from build_config.\"\"\"\n for field in fields:\n build_config.pop(field, None)\n\n def update_input_types(self, build_config: dotdict) -> dotdict:\n \"\"\"Update input types for all fields in build_config.\"\"\"\n for key, value in build_config.items():\n if isinstance(value, dict):\n if value.get(\"input_types\") is None:\n build_config[key][\"input_types\"] = []\n elif hasattr(value, \"input_types\") and value.input_types is None:\n value.input_types = []\n return build_config\n\n async def update_build_config(\n self, build_config: dotdict, field_value: str, field_name: str | None = None\n ) -> dotdict:\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n # Existing logic for updating build_config\n if field_name in (\"agent_llm\",):\n build_config[\"agent_llm\"][\"value\"] = field_value\n provider_info = MODEL_PROVIDERS_DICT.get(field_value)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call the component class's update_build_config method\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n\n provider_configs: dict[str, tuple[dict, list[dict]]] = {\n provider: (\n MODEL_PROVIDERS_DICT[provider][\"fields\"],\n [\n MODEL_PROVIDERS_DICT[other_provider][\"fields\"]\n for other_provider in MODEL_PROVIDERS_DICT\n if other_provider != provider\n ],\n )\n for provider in MODEL_PROVIDERS_DICT\n }\n if field_value in provider_configs:\n fields_to_add, fields_to_delete = provider_configs[field_value]\n\n # Delete fields from other providers\n for fields in fields_to_delete:\n self.delete_fields(build_config, fields)\n\n # Add provider-specific fields\n if field_value == \"OpenAI\" and not any(field in build_config for field in fields_to_add):\n build_config.update(fields_to_add)\n else:\n build_config.update(fields_to_add)\n # Reset input types for agent_llm\n build_config[\"agent_llm\"][\"input_types\"] = []\n elif field_value == \"Custom\":\n # Delete all provider fields\n self.delete_fields(build_config, ALL_PROVIDER_FIELDS)\n # Update with custom component\n custom_component = DropdownInput(\n name=\"agent_llm\",\n display_name=\"Language Model\",\n options=[*sorted(MODEL_PROVIDERS_DICT.keys()), \"Custom\"],\n value=\"Custom\",\n real_time_refresh=True,\n input_types=[\"LanguageModel\"],\n )\n build_config.update({\"agent_llm\": custom_component.to_dict()})\n # Update input types for all fields\n build_config = self.update_input_types(build_config)\n\n # Validate required keys\n default_keys = [\n \"code\",\n \"_type\",\n \"agent_llm\",\n \"tools\",\n \"input_value\",\n \"add_current_date_tool\",\n \"system_prompt\",\n \"agent_description\",\n \"max_iterations\",\n \"handle_parsing_errors\",\n \"verbose\",\n ]\n missing_keys = [key for key in default_keys if key not in build_config]\n if missing_keys:\n msg = f\"Missing required keys in build_config: {missing_keys}\"\n raise ValueError(msg)\n if (\n isinstance(self.agent_llm, str)\n and self.agent_llm in MODEL_PROVIDERS_DICT\n and field_name in MODEL_DYNAMIC_UPDATE_FIELDS\n ):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n component_class = self.set_component_params(component_class)\n prefix = provider_info.get(\"prefix\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call each component class's update_build_config method\n # remove the prefix from the field_name\n if isinstance(field_name, str) and isinstance(prefix, str):\n field_name = field_name.replace(prefix, \"\")\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n return dotdict({k: v.to_dict() if hasattr(v, \"to_dict\") else v for k, v in build_config.items()})\n\n async def to_toolkit(self) -> list[Tool]:\n component_toolkit = _get_component_toolkit()\n tools_names = self._build_tools_names()\n agent_description = self.get_tool_description()\n # TODO: Agent Description Depreciated Feature to be removed\n description = f\"{agent_description}{tools_names}\"\n tools = component_toolkit(component=self).get_tools(\n tool_name=self.get_tool_name(), tool_description=description, callbacks=self.get_langchain_callbacks()\n )\n if hasattr(self, \"tools_metadata\"):\n tools = component_toolkit(component=self, metadata=self.tools_metadata).update_tools_metadata(tools=tools)\n return tools\n" + "value": "from langchain_core.tools import StructuredTool\n\nfrom langflow.base.agents.agent import LCToolsAgentComponent\nfrom langflow.base.agents.events import ExceptionWithMessageError\nfrom langflow.base.models.model_input_constants import (\n ALL_PROVIDER_FIELDS,\n MODEL_DYNAMIC_UPDATE_FIELDS,\n MODEL_PROVIDERS_DICT,\n MODELS_METADATA,\n)\nfrom langflow.base.models.model_utils import get_model_name\nfrom langflow.components.helpers import CurrentDateComponent\nfrom langflow.components.helpers.memory import MemoryComponent\nfrom langflow.components.langchain_utilities.tool_calling import ToolCallingAgentComponent\nfrom langflow.custom.custom_component.component import _get_component_toolkit\nfrom langflow.custom.utils import update_component_build_config\nfrom langflow.field_typing import Tool\nfrom langflow.io import BoolInput, DropdownInput, MultilineInput, Output\nfrom langflow.logging import logger\nfrom langflow.schema.dotdict import dotdict\nfrom langflow.schema.message import Message\n\n\ndef set_advanced_true(component_input):\n component_input.advanced = True\n return component_input\n\n\nclass AgentComponent(ToolCallingAgentComponent):\n display_name: str = \"Agent\"\n description: str = \"Define the agent's instructions, then enter a task to complete using tools.\"\n icon = \"bot\"\n beta = False\n name = \"Agent\"\n\n memory_inputs = [set_advanced_true(component_input) for component_input in MemoryComponent().inputs]\n\n inputs = [\n DropdownInput(\n name=\"agent_llm\",\n display_name=\"Model Provider\",\n info=\"The provider of the language model that the agent will use to generate responses.\",\n options=[*sorted(MODEL_PROVIDERS_DICT.keys()), \"Custom\"],\n value=\"OpenAI\",\n real_time_refresh=True,\n input_types=[],\n options_metadata=[MODELS_METADATA[key] for key in sorted(MODELS_METADATA.keys())] + [{\"icon\": \"brain\"}],\n ),\n *MODEL_PROVIDERS_DICT[\"OpenAI\"][\"inputs\"],\n MultilineInput(\n name=\"system_prompt\",\n display_name=\"Agent Instructions\",\n info=\"System Prompt: Initial instructions and context provided to guide the agent's behavior.\",\n value=\"You are a helpful assistant that can use tools to answer questions and perform tasks.\",\n advanced=False,\n ),\n *LCToolsAgentComponent._base_inputs,\n *memory_inputs,\n BoolInput(\n name=\"add_current_date_tool\",\n display_name=\"Current Date\",\n advanced=True,\n info=\"If true, will add a tool to the agent that returns the current date.\",\n value=True,\n ),\n ]\n outputs = [Output(name=\"response\", display_name=\"Response\", method=\"message_response\")]\n\n async def message_response(self) -> Message:\n try:\n # Get LLM model and validate\n llm_model, display_name = self.get_llm()\n if llm_model is None:\n msg = \"No language model selected. Please choose a model to proceed.\"\n raise ValueError(msg)\n self.model_name = get_model_name(llm_model, display_name=display_name)\n\n # Get memory data\n self.chat_history = await self.get_memory_data()\n\n # Add current date tool if enabled\n if self.add_current_date_tool:\n if not isinstance(self.tools, list): # type: ignore[has-type]\n self.tools = []\n current_date_tool = (await CurrentDateComponent(**self.get_base_args()).to_toolkit()).pop(0)\n if not isinstance(current_date_tool, StructuredTool):\n msg = \"CurrentDateComponent must be converted to a StructuredTool\"\n raise TypeError(msg)\n self.tools.append(current_date_tool)\n\n # Validate tools\n if not self.tools:\n msg = \"Tools are required to run the agent. Please add at least one tool.\"\n raise ValueError(msg)\n\n # Set up and run agent\n self.set(\n llm=llm_model,\n tools=self.tools,\n chat_history=self.chat_history,\n input_value=self.input_value,\n system_prompt=self.system_prompt,\n )\n agent = self.create_agent_runnable()\n return await self.run_agent(agent)\n\n except (ValueError, TypeError, KeyError) as e:\n logger.error(f\"{type(e).__name__}: {e!s}\")\n raise\n except ExceptionWithMessageError as e:\n logger.error(f\"ExceptionWithMessageError occurred: {e}\")\n raise\n except Exception as e:\n logger.error(f\"Unexpected error: {e!s}\")\n raise\n\n async def get_memory_data(self):\n memory_kwargs = {\n component_input.name: getattr(self, f\"{component_input.name}\") for component_input in self.memory_inputs\n }\n # filter out empty values\n memory_kwargs = {k: v for k, v in memory_kwargs.items() if v}\n\n return await MemoryComponent(**self.get_base_args()).set(**memory_kwargs).retrieve_messages()\n\n def get_llm(self):\n if not isinstance(self.agent_llm, str):\n return self.agent_llm, None\n\n try:\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if not provider_info:\n msg = f\"Invalid model provider: {self.agent_llm}\"\n raise ValueError(msg)\n\n component_class = provider_info.get(\"component_class\")\n display_name = component_class.display_name\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\", \"\")\n\n return self._build_llm_model(component_class, inputs, prefix), display_name\n\n except Exception as e:\n logger.error(f\"Error building {self.agent_llm} language model: {e!s}\")\n msg = f\"Failed to initialize language model: {e!s}\"\n raise ValueError(msg) from e\n\n def _build_llm_model(self, component, inputs, prefix=\"\"):\n model_kwargs = {input_.name: getattr(self, f\"{prefix}{input_.name}\") for input_ in inputs}\n return component.set(**model_kwargs).build_model()\n\n def set_component_params(self, component):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n inputs = provider_info.get(\"inputs\")\n prefix = provider_info.get(\"prefix\")\n model_kwargs = {input_.name: getattr(self, f\"{prefix}{input_.name}\") for input_ in inputs}\n\n return component.set(**model_kwargs)\n return component\n\n def delete_fields(self, build_config: dotdict, fields: dict | list[str]) -> None:\n \"\"\"Delete specified fields from build_config.\"\"\"\n for field in fields:\n build_config.pop(field, None)\n\n def update_input_types(self, build_config: dotdict) -> dotdict:\n \"\"\"Update input types for all fields in build_config.\"\"\"\n for key, value in build_config.items():\n if isinstance(value, dict):\n if value.get(\"input_types\") is None:\n build_config[key][\"input_types\"] = []\n elif hasattr(value, \"input_types\") and value.input_types is None:\n value.input_types = []\n return build_config\n\n async def update_build_config(\n self, build_config: dotdict, field_value: str, field_name: str | None = None\n ) -> dotdict:\n # Iterate over all providers in the MODEL_PROVIDERS_DICT\n # Existing logic for updating build_config\n if field_name in (\"agent_llm\",):\n build_config[\"agent_llm\"][\"value\"] = field_value\n provider_info = MODEL_PROVIDERS_DICT.get(field_value)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call the component class's update_build_config method\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n\n provider_configs: dict[str, tuple[dict, list[dict]]] = {\n provider: (\n MODEL_PROVIDERS_DICT[provider][\"fields\"],\n [\n MODEL_PROVIDERS_DICT[other_provider][\"fields\"]\n for other_provider in MODEL_PROVIDERS_DICT\n if other_provider != provider\n ],\n )\n for provider in MODEL_PROVIDERS_DICT\n }\n if field_value in provider_configs:\n fields_to_add, fields_to_delete = provider_configs[field_value]\n\n # Delete fields from other providers\n for fields in fields_to_delete:\n self.delete_fields(build_config, fields)\n\n # Add provider-specific fields\n if field_value == \"OpenAI\" and not any(field in build_config for field in fields_to_add):\n build_config.update(fields_to_add)\n else:\n build_config.update(fields_to_add)\n # Reset input types for agent_llm\n build_config[\"agent_llm\"][\"input_types\"] = []\n elif field_value == \"Custom\":\n # Delete all provider fields\n self.delete_fields(build_config, ALL_PROVIDER_FIELDS)\n # Update with custom component\n custom_component = DropdownInput(\n name=\"agent_llm\",\n display_name=\"Language Model\",\n options=[*sorted(MODEL_PROVIDERS_DICT.keys()), \"Custom\"],\n value=\"Custom\",\n real_time_refresh=True,\n input_types=[\"LanguageModel\"],\n options_metadata=[MODELS_METADATA[key] for key in sorted(MODELS_METADATA.keys())]\n + [{\"icon\": \"brain\"}],\n )\n build_config.update({\"agent_llm\": custom_component.to_dict()})\n # Update input types for all fields\n build_config = self.update_input_types(build_config)\n\n # Validate required keys\n default_keys = [\n \"code\",\n \"_type\",\n \"agent_llm\",\n \"tools\",\n \"input_value\",\n \"add_current_date_tool\",\n \"system_prompt\",\n \"agent_description\",\n \"max_iterations\",\n \"handle_parsing_errors\",\n \"verbose\",\n ]\n missing_keys = [key for key in default_keys if key not in build_config]\n if missing_keys:\n msg = f\"Missing required keys in build_config: {missing_keys}\"\n raise ValueError(msg)\n if (\n isinstance(self.agent_llm, str)\n and self.agent_llm in MODEL_PROVIDERS_DICT\n and field_name in MODEL_DYNAMIC_UPDATE_FIELDS\n ):\n provider_info = MODEL_PROVIDERS_DICT.get(self.agent_llm)\n if provider_info:\n component_class = provider_info.get(\"component_class\")\n component_class = self.set_component_params(component_class)\n prefix = provider_info.get(\"prefix\")\n if component_class and hasattr(component_class, \"update_build_config\"):\n # Call each component class's update_build_config method\n # remove the prefix from the field_name\n if isinstance(field_name, str) and isinstance(prefix, str):\n field_name = field_name.replace(prefix, \"\")\n build_config = await update_component_build_config(\n component_class, build_config, field_value, \"model_name\"\n )\n return dotdict({k: v.to_dict() if hasattr(v, \"to_dict\") else v for k, v in build_config.items()})\n\n async def to_toolkit(self) -> list[Tool]:\n component_toolkit = _get_component_toolkit()\n tools_names = self._build_tools_names()\n agent_description = self.get_tool_description()\n # TODO: Agent Description Depreciated Feature to be removed\n description = f\"{agent_description}{tools_names}\"\n tools = component_toolkit(component=self).get_tools(\n tool_name=self.get_tool_name(), tool_description=description, callbacks=self.get_langchain_callbacks()\n )\n if hasattr(self, \"tools_metadata\"):\n tools = component_toolkit(component=self, metadata=self.tools_metadata).update_tools_metadata(tools=tools)\n return tools\n" }, "handle_parsing_errors": { "_input_type": "BoolInput", @@ -1400,7 +1400,7 @@ "show": true, "title_case": false, "type": "code", - "value": "from typing import Any\n\nfrom langflow.base.io.chat import ChatComponent\nfrom langflow.inputs import BoolInput\nfrom langflow.inputs.inputs import HandleInput\nfrom langflow.io import DropdownInput, MessageTextInput, Output\nfrom langflow.schema.data import Data\nfrom langflow.schema.dataframe import DataFrame\nfrom langflow.schema.message import Message\nfrom langflow.schema.properties import Source\nfrom langflow.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Text\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n MessageTextInput(\n name=\"background_color\",\n display_name=\"Background Color\",\n info=\"The background color of the icon.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"chat_icon\",\n display_name=\"Icon\",\n info=\"The icon of the message.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"text_color\",\n display_name=\"Text Color\",\n info=\"The text color of the name\",\n advanced=True,\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n info=\"Whether to clean the data\",\n advanced=True,\n ),\n ]\n outputs = [\n Output(\n display_name=\"Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n\n # Get source properties\n source, icon, display_name, source_id = self.get_properties_from_source_component()\n background_color = self.background_color\n text_color = self.text_color\n if self.chat_icon:\n icon = self.chat_icon\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message):\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n message.properties.icon = icon\n message.properties.background_color = background_color\n message.properties.text_color = text_color\n\n # Store message if needed\n if self.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if not isinstance(self.input_value, Data | DataFrame | Message | str | list):\n msg = f\"Expected Data or DataFrame or Message or str, got {type(self.input_value).__name__}\"\n raise TypeError(msg)\n\n def _safe_convert(self, data: Any) -> str:\n \"\"\"Safely convert input data to string.\"\"\"\n try:\n if isinstance(data, str):\n return data\n if isinstance(data, Message):\n return data.get_text()\n if isinstance(data, Data):\n if data.get_text() is None:\n msg = \"Empty Data object\"\n raise ValueError(msg)\n return data.get_text()\n if isinstance(data, DataFrame):\n if self.clean_data:\n # Remove empty rows\n data = data.dropna(how=\"all\")\n # Remove empty lines in each cell\n data = data.replace(r\"^\\s*$\", \"\", regex=True)\n # Replace multiple newlines with a single newline\n data = data.replace(r\"\\n+\", \"\\n\", regex=True)\n return data.to_markdown(index=False)\n return str(data)\n except (ValueError, TypeError, AttributeError) as e:\n msg = f\"Error converting data: {e!s}\"\n raise ValueError(msg) from e\n\n def convert_to_string(self) -> str:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n return \"\\n\".join([self._safe_convert(item) for item in self.input_value])\n return self._safe_convert(self.input_value)\n" + "value": "from collections.abc import Generator\nfrom typing import Any\n\nfrom langflow.base.io.chat import ChatComponent\nfrom langflow.inputs import BoolInput\nfrom langflow.inputs.inputs import HandleInput\nfrom langflow.io import DropdownInput, MessageTextInput, Output\nfrom langflow.schema.data import Data\nfrom langflow.schema.dataframe import DataFrame\nfrom langflow.schema.message import Message\nfrom langflow.schema.properties import Source\nfrom langflow.utils.constants import (\n MESSAGE_SENDER_AI,\n MESSAGE_SENDER_NAME_AI,\n MESSAGE_SENDER_USER,\n)\n\n\nclass ChatOutput(ChatComponent):\n display_name = \"Chat Output\"\n description = \"Display a chat message in the Playground.\"\n icon = \"MessagesSquare\"\n name = \"ChatOutput\"\n minimized = True\n\n inputs = [\n HandleInput(\n name=\"input_value\",\n display_name=\"Text\",\n info=\"Message to be passed as output.\",\n input_types=[\"Data\", \"DataFrame\", \"Message\"],\n required=True,\n ),\n BoolInput(\n name=\"should_store_message\",\n display_name=\"Store Messages\",\n info=\"Store the message in the history.\",\n value=True,\n advanced=True,\n ),\n DropdownInput(\n name=\"sender\",\n display_name=\"Sender Type\",\n options=[MESSAGE_SENDER_AI, MESSAGE_SENDER_USER],\n value=MESSAGE_SENDER_AI,\n advanced=True,\n info=\"Type of sender.\",\n ),\n MessageTextInput(\n name=\"sender_name\",\n display_name=\"Sender Name\",\n info=\"Name of the sender.\",\n value=MESSAGE_SENDER_NAME_AI,\n advanced=True,\n ),\n MessageTextInput(\n name=\"session_id\",\n display_name=\"Session ID\",\n info=\"The session ID of the chat. If empty, the current session ID parameter will be used.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"data_template\",\n display_name=\"Data Template\",\n value=\"{text}\",\n advanced=True,\n info=\"Template to convert Data to Text. If left empty, it will be dynamically set to the Data's text key.\",\n ),\n MessageTextInput(\n name=\"background_color\",\n display_name=\"Background Color\",\n info=\"The background color of the icon.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"chat_icon\",\n display_name=\"Icon\",\n info=\"The icon of the message.\",\n advanced=True,\n ),\n MessageTextInput(\n name=\"text_color\",\n display_name=\"Text Color\",\n info=\"The text color of the name\",\n advanced=True,\n ),\n BoolInput(\n name=\"clean_data\",\n display_name=\"Basic Clean Data\",\n value=True,\n info=\"Whether to clean the data\",\n advanced=True,\n ),\n ]\n outputs = [\n Output(\n display_name=\"Message\",\n name=\"message\",\n method=\"message_response\",\n ),\n ]\n\n def _build_source(self, id_: str | None, display_name: str | None, source: str | None) -> Source:\n source_dict = {}\n if id_:\n source_dict[\"id\"] = id_\n if display_name:\n source_dict[\"display_name\"] = display_name\n if source:\n # Handle case where source is a ChatOpenAI object\n if hasattr(source, \"model_name\"):\n source_dict[\"source\"] = source.model_name\n elif hasattr(source, \"model\"):\n source_dict[\"source\"] = str(source.model)\n else:\n source_dict[\"source\"] = str(source)\n return Source(**source_dict)\n\n async def message_response(self) -> Message:\n # First convert the input to string if needed\n text = self.convert_to_string()\n # Get source properties\n source, icon, display_name, source_id = self.get_properties_from_source_component()\n background_color = self.background_color\n text_color = self.text_color\n if self.chat_icon:\n icon = self.chat_icon\n\n # Create or use existing Message object\n if isinstance(self.input_value, Message):\n message = self.input_value\n # Update message properties\n message.text = text\n else:\n message = Message(text=text)\n\n # Set message properties\n message.sender = self.sender\n message.sender_name = self.sender_name\n message.session_id = self.session_id\n message.flow_id = self.graph.flow_id if hasattr(self, \"graph\") else None\n message.properties.source = self._build_source(source_id, display_name, source)\n message.properties.icon = icon\n message.properties.background_color = background_color\n message.properties.text_color = text_color\n\n # Store message if needed\n if self.session_id and self.should_store_message:\n stored_message = await self.send_message(message)\n self.message.value = stored_message\n message = stored_message\n\n self.status = message\n return message\n\n def _validate_input(self) -> None:\n \"\"\"Validate the input data and raise ValueError if invalid.\"\"\"\n if self.input_value is None:\n msg = \"Input data cannot be None\"\n raise ValueError(msg)\n if isinstance(self.input_value, list) and not all(\n isinstance(item, Message | Data | DataFrame | str) for item in self.input_value\n ):\n invalid_types = [\n type(item).__name__\n for item in self.input_value\n if not isinstance(item, Message | Data | DataFrame | str)\n ]\n msg = f\"Expected Data or DataFrame or Message or str, got {invalid_types}\"\n raise TypeError(msg)\n if not isinstance(\n self.input_value,\n Message | Data | DataFrame | str | list | Generator | type(None),\n ):\n type_name = type(self.input_value).__name__\n msg = f\"Expected Data or DataFrame or Message or str, Generator or None, got {type_name}\"\n raise TypeError(msg)\n\n def _safe_convert(self, data: Any) -> str:\n \"\"\"Safely convert input data to string.\"\"\"\n try:\n if isinstance(data, str):\n return data\n if isinstance(data, Message):\n return data.get_text()\n if isinstance(data, Data):\n if data.get_text() is None:\n msg = \"Empty Data object\"\n raise ValueError(msg)\n return data.get_text()\n if isinstance(data, DataFrame):\n if self.clean_data:\n # Remove empty rows\n data = data.dropna(how=\"all\")\n # Remove empty lines in each cell\n data = data.replace(r\"^\\s*$\", \"\", regex=True)\n # Replace multiple newlines with a single newline\n data = data.replace(r\"\\n+\", \"\\n\", regex=True)\n return (\n data.replace(r\"\\|\", r\"\\\\|\", regex=True)\n .applymap(lambda x: (str(x).replace(\"\\n\", \"
\") if isinstance(x, str) else x))\n .to_markdown(index=False)\n )\n return str(data)\n except (ValueError, TypeError, AttributeError) as e:\n msg = f\"Error converting data: {e!s}\"\n raise ValueError(msg) from e\n\n def convert_to_string(self) -> str | Generator[Any, None, None]:\n \"\"\"Convert input data to string with proper error handling.\"\"\"\n self._validate_input()\n if isinstance(self.input_value, list):\n return \"\\n\".join([self._safe_convert(item) for item in self.input_value])\n if isinstance(self.input_value, Generator):\n return self.input_value\n return self._safe_convert(self.input_value)\n" }, "data_template": { "_input_type": "MessageTextInput", diff --git a/src/backend/tests/.test_durations b/src/backend/tests/.test_durations index 79469db475a7..329703c21c79 100644 --- a/src/backend/tests/.test_durations +++ b/src/backend/tests/.test_durations @@ -67,221 +67,221 @@ "src/backend/tests/test_webhook.py::test_webhook_endpoint": 8.848518459000388, "src/backend/tests/test_webhook.py::test_webhook_flow_on_run_endpoint": 4.675444458000584, "src/backend/tests/test_webhook.py::test_webhook_with_random_payload": 5.161753501000476, - "src/backend/tests/unit/api/test_api_utils.py::test_get_outdated_components": 0.0016596409999465322, - "src/backend/tests/unit/api/test_api_utils.py::test_get_suggestion_message": 0.0020506409999825337, - "src/backend/tests/unit/api/v1/test_api_key.py::test_create_api_key_route": 6.128217348999954, - "src/backend/tests/unit/api/v1/test_api_key.py::test_create_folder": 35.470175047, - "src/backend/tests/unit/api/v1/test_api_key.py::test_delete_api_key_route": 6.147330064000016, - "src/backend/tests/unit/api/v1/test_api_key.py::test_save_store_api_key": 5.99266978899999, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_combined_fields": 0.03160188900000094, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_logs": 0.017377605999968182, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_nested_structures": 0.014768911000032858, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_outputs": 0.018483011000000715, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_special_types": 0.04001355900004455, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_truncation": 1.803277236999918, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_vertex_build_response_serialization": 0.01849232900002562, - "src/backend/tests/unit/api/v1/test_api_schemas.py::test_vertex_build_response_with_long_data": 0.013445816999933413, - "src/backend/tests/unit/api/v1/test_endpoints.py::test_get_config": 5.412089165000111, - "src/backend/tests/unit/api/v1/test_endpoints.py::test_get_version": 5.555101046999994, - "src/backend/tests/unit/api/v1/test_endpoints.py::test_update_component_model_name_options": 5.831223831000102, - "src/backend/tests/unit/api/v1/test_endpoints.py::test_update_component_outputs": 5.685603790000073, - "src/backend/tests/unit/api/v1/test_files.py::test_delete_file": 6.011344089999852, - "src/backend/tests/unit/api/v1/test_files.py::test_download_file": 6.537537408000048, - "src/backend/tests/unit/api/v1/test_files.py::test_file_operations": 5.997728363999954, - "src/backend/tests/unit/api/v1/test_files.py::test_list_files": 5.753321408999909, - "src/backend/tests/unit/api/v1/test_files.py::test_upload_file": 5.801568594999935, - "src/backend/tests/unit/api/v1/test_files.py::test_upload_file_size_limit": 6.124407567999924, - "src/backend/tests/unit/api/v1/test_flows.py::test_create_flow": 6.086589431000107, - "src/backend/tests/unit/api/v1/test_flows.py::test_create_flows": 5.881644098999914, - "src/backend/tests/unit/api/v1/test_flows.py::test_read_basic_examples": 5.723729036999998, - "src/backend/tests/unit/api/v1/test_flows.py::test_read_flow": 6.002315843000019, - "src/backend/tests/unit/api/v1/test_flows.py::test_read_flows": 6.709458730999927, - "src/backend/tests/unit/api/v1/test_flows.py::test_update_flow": 5.844402561999914, - "src/backend/tests/unit/api/v1/test_folders.py::test_create_folder": 5.9109111290000556, - "src/backend/tests/unit/api/v1/test_folders.py::test_read_folder": 6.419733993000023, - "src/backend/tests/unit/api/v1/test_folders.py::test_read_folders": 5.7527289959999734, - "src/backend/tests/unit/api/v1/test_folders.py::test_update_folder": 5.696710314000029, - "src/backend/tests/unit/api/v1/test_starter_projects.py::test_get_starter_projects": 6.186103603999982, - "src/backend/tests/unit/api/v1/test_store.py::test_check_if_store_is_enabled": 5.106343370000104, - "src/backend/tests/unit/api/v1/test_users.py::test_add_user": 5.386908469999867, - "src/backend/tests/unit/api/v1/test_users.py::test_delete_user": 6.089451127999837, - "src/backend/tests/unit/api/v1/test_users.py::test_patch_user": 6.411688595999976, - "src/backend/tests/unit/api/v1/test_users.py::test_read_all_users": 5.866943515999992, - "src/backend/tests/unit/api/v1/test_users.py::test_read_current_user": 5.6698127930000055, - "src/backend/tests/unit/api/v1/test_users.py::test_reset_password": 7.13597396199998, - "src/backend/tests/unit/api/v1/test_validate.py::test_post_validate_code": 5.14192363199993, - "src/backend/tests/unit/api/v1/test_validate.py::test_post_validate_prompt": 5.169396551999853, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable": 5.692838624999808, + "src/backend/tests/unit/api/test_api_utils.py::test_get_outdated_components": 0.001644098999918242, + "src/backend/tests/unit/api/test_api_utils.py::test_get_suggestion_message": 0.0020606080000220572, + "src/backend/tests/unit/api/v1/test_api_key.py::test_create_api_key_route": 6.032772819000115, + "src/backend/tests/unit/api/v1/test_api_key.py::test_create_folder": 29.620045182000126, + "src/backend/tests/unit/api/v1/test_api_key.py::test_delete_api_key_route": 5.465050268000141, + "src/backend/tests/unit/api/v1/test_api_key.py::test_save_store_api_key": 5.491068983000105, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_combined_fields": 0.03076834900002723, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_logs": 0.016940054000087912, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_nested_structures": 0.01433896400010326, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_outputs": 0.018158324999944853, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_special_types": 0.03842179799994483, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_result_data_response_truncation": 1.7303130000000237, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_vertex_build_response_serialization": 0.01730104000000665, + "src/backend/tests/unit/api/v1/test_api_schemas.py::test_vertex_build_response_with_long_data": 0.012613753999971777, + "src/backend/tests/unit/api/v1/test_endpoints.py::test_get_config": 5.026012808999894, + "src/backend/tests/unit/api/v1/test_endpoints.py::test_get_version": 5.026076463000095, + "src/backend/tests/unit/api/v1/test_endpoints.py::test_update_component_model_name_options": 5.7742817970000715, + "src/backend/tests/unit/api/v1/test_endpoints.py::test_update_component_outputs": 5.622050569999828, + "src/backend/tests/unit/api/v1/test_files.py::test_delete_file": 5.582512999000073, + "src/backend/tests/unit/api/v1/test_files.py::test_download_file": 6.76563920000001, + "src/backend/tests/unit/api/v1/test_files.py::test_file_operations": 5.61520707599982, + "src/backend/tests/unit/api/v1/test_files.py::test_list_files": 7.471516461000078, + "src/backend/tests/unit/api/v1/test_files.py::test_upload_file": 15.951193636000198, + "src/backend/tests/unit/api/v1/test_files.py::test_upload_file_size_limit": 5.605534470000066, + "src/backend/tests/unit/api/v1/test_flows.py::test_create_flow": 5.537085366999918, + "src/backend/tests/unit/api/v1/test_flows.py::test_create_flows": 5.5280846499999825, + "src/backend/tests/unit/api/v1/test_flows.py::test_read_basic_examples": 5.499669979000146, + "src/backend/tests/unit/api/v1/test_flows.py::test_read_flow": 5.4346129690001135, + "src/backend/tests/unit/api/v1/test_flows.py::test_read_flows": 6.112109010999916, + "src/backend/tests/unit/api/v1/test_flows.py::test_update_flow": 5.480996380000079, + "src/backend/tests/unit/api/v1/test_folders.py::test_create_folder": 5.544932837000033, + "src/backend/tests/unit/api/v1/test_folders.py::test_read_folder": 5.4994593210000176, + "src/backend/tests/unit/api/v1/test_folders.py::test_read_folders": 6.277688180000041, + "src/backend/tests/unit/api/v1/test_folders.py::test_update_folder": 5.510229006000031, + "src/backend/tests/unit/api/v1/test_starter_projects.py::test_get_starter_projects": 6.0973302200000035, + "src/backend/tests/unit/api/v1/test_store.py::test_check_if_store_is_enabled": 5.041123773999971, + "src/backend/tests/unit/api/v1/test_users.py::test_add_user": 5.289087143000074, + "src/backend/tests/unit/api/v1/test_users.py::test_delete_user": 5.7950954890001185, + "src/backend/tests/unit/api/v1/test_users.py::test_patch_user": 6.054591651999999, + "src/backend/tests/unit/api/v1/test_users.py::test_read_all_users": 5.507816656999921, + "src/backend/tests/unit/api/v1/test_users.py::test_read_current_user": 6.266148894000025, + "src/backend/tests/unit/api/v1/test_users.py::test_reset_password": 5.981291563000013, + "src/backend/tests/unit/api/v1/test_validate.py::test_post_validate_code": 5.100207059999889, + "src/backend/tests/unit/api/v1/test_validate.py::test_post_validate_prompt": 5.107461045999912, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable": 6.373818809999989, "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__Exception": 5.891528583015315, "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__HTTPException": 2.8841335409670137, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__exception": 5.691234632000032, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__httpexception": 5.727572592999991, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__exception": 5.530898640000032, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__httpexception": 5.554854526999975, "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_alread_exists": 3.690157334029209, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_already_exists": 5.673326578999877, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_and_value_cannot_be_empty": 5.887064084000031, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_cannot_be_empty": 5.825039106000077, - "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_value_cannot_be_empty": 6.8560361919999195, - "src/backend/tests/unit/api/v1/test_variable.py::test_delete_variable": 5.693584027000043, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_already_exists": 15.4768686970001, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_and_value_cannot_be_empty": 5.518282996999915, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_name_cannot_be_empty": 5.630474014000015, + "src/backend/tests/unit/api/v1/test_variable.py::test_create_variable__variable_value_cannot_be_empty": 5.495668730000034, + "src/backend/tests/unit/api/v1/test_variable.py::test_delete_variable": 5.597369172999947, "src/backend/tests/unit/api/v1/test_variable.py::test_delete_variable__Exception": 3.1565893749939278, - "src/backend/tests/unit/api/v1/test_variable.py::test_delete_variable__exception": 6.566732129999991, - "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables": 5.77030506199992, - "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables__": 5.6449661060000835, - "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables__empty": 5.711566570000059, - "src/backend/tests/unit/api/v1/test_variable.py::test_update_variable": 5.617759335999949, + "src/backend/tests/unit/api/v1/test_variable.py::test_delete_variable__exception": 5.5672793990000855, + "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables": 5.602160636999997, + "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables__": 5.653873999000098, + "src/backend/tests/unit/api/v1/test_variable.py::test_read_variables__empty": 6.553796237000029, + "src/backend/tests/unit/api/v1/test_variable.py::test_update_variable": 5.575146901000039, "src/backend/tests/unit/api/v1/test_variable.py::test_update_variable__Exception": 3.202228542009834, - "src/backend/tests/unit/api/v1/test_variable.py::test_update_variable__exception": 5.674551148999967, - "src/backend/tests/unit/api/v2/test_files.py::test_delete_file": 5.9235955909998665, - "src/backend/tests/unit/api/v2/test_files.py::test_download_file": 5.793622821000099, - "src/backend/tests/unit/api/v2/test_files.py::test_edit_file": 5.871168438000041, - "src/backend/tests/unit/api/v2/test_files.py::test_list_files": 5.844790315000068, - "src/backend/tests/unit/api/v2/test_files.py::test_upload_file": 5.73779718000003, - "src/backend/tests/unit/base/load/test_load.py::test_run_flow_from_json_params": 0.0017256329999781883, - "src/backend/tests/unit/base/load/test_load.py::test_run_flow_with_fake_env": 0.06652463800003261, - "src/backend/tests/unit/base/load/test_load.py::test_run_flow_with_fake_env_tweaks": 0.06484171900001456, + "src/backend/tests/unit/api/v1/test_variable.py::test_update_variable__exception": 5.592545988000211, + "src/backend/tests/unit/api/v2/test_files.py::test_delete_file": 6.721779447000017, + "src/backend/tests/unit/api/v2/test_files.py::test_download_file": 5.609379532000048, + "src/backend/tests/unit/api/v2/test_files.py::test_edit_file": 5.6194418609999275, + "src/backend/tests/unit/api/v2/test_files.py::test_list_files": 5.590833683000028, + "src/backend/tests/unit/api/v2/test_files.py::test_upload_file": 5.6711804360001, + "src/backend/tests/unit/base/load/test_load.py::test_run_flow_from_json_params": 0.0017109070000742577, + "src/backend/tests/unit/base/load/test_load.py::test_run_flow_with_fake_env": 0.06565579499999785, + "src/backend/tests/unit/base/load/test_load.py::test_run_flow_with_fake_env_tweaks": 0.051992843000107314, "src/backend/tests/unit/base/models/test_model_constants.py::test_provider_names": 0.024663168034749106, "src/backend/tests/unit/base/tools/test_component_tool.py::test_component_tool": 0.04467487393412739, - "src/backend/tests/unit/base/tools/test_component_toolkit.py::test_component_tool": 0.0046781399998963025, - "src/backend/tests/unit/base/tools/test_component_toolkit.py::test_component_tool_with_api_key": 5.260460819999821, - "src/backend/tests/unit/base/tools/test_create_schema.py::test_create_schema": 0.0020318059998771787, - "src/backend/tests/unit/base/tools/test_toolmodemixin.py::test_component_inputs_toolkit": 0.006665142999963791, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_all_versions_have_a_file_name_defined": 0.001387872000009338, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_build_config_update": 0.019009454000183723, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.0.19]": 0.001383254000074885, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.1.0]": 0.0013695789999701447, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.1.1]": 0.001347969000107696, - "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_latest_version": 0.008971210999902723, - "src/backend/tests/unit/components/agents/test_agent_component.py::test_agent_component_with_calculator": 0.09809865900001569, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_end_event": 0.002505682999981218, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_start_event": 0.0029746170000635175, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_stream_event": 0.0023675040000625813, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_empty_data": 0.0015835079999533264, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_no_output": 0.0015942589999440315, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_with_empty_return_values": 0.0016560540001364643, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_with_output": 0.0016372300000284667, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_start_no_input": 0.0016040960001646454, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_start_with_input": 0.0016459649999660542, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_stream_no_output": 0.002239734999989196, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_stream_with_output": 0.0016858879999972487, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_end": 0.001729991999923186, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_error": 0.0017021209999938947, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_start": 0.0017214859999512555, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_multiple_events": 0.00265975900003923, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_end_event": 0.002487287000121796, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_error_event": 0.0024726099999270446, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_start_event": 0.0026804380000839956, - "src/backend/tests/unit/components/agents/test_agent_events.py::test_unknown_event": 0.002602091999960976, - "src/backend/tests/unit/components/agents/test_tool_calling_agent.py::test_tool_calling_agent_component": 0.05527448899988485, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_all_versions_have_a_file_name_defined": 0.0014118270000835764, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_basic_setup": 0.0033146440000564326, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.0.19]": 0.001477851999993618, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.1.0]": 0.0013980730000184849, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.1.1]": 0.0013781349998680525, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_empty_transcript_handling": 0.004489417000058893, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_data_output_success": 0.003983462000064719, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_dataframe_output_success": 0.005274235000001681, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_message_output_success": 0.003855833999978131, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_latest_version": 0.007492838999951346, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_no_transcript_found_error": 0.0036904060000324534, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_transcript_disabled_error": 0.004403026999966642, - "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_translation_setting": 0.0032600020000472796, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_httpx_metadata_behavior[False-expected_properties0]": 0.029158687000062855, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_httpx_metadata_behavior[True-expected_properties1]": 0.028232667000111178, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_parse_curl": 0.0033613300000752133, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_binary_content": 0.0032728550000911127, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_default_filename": 0.004085271999997531, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_filename_from_content_disposition": 0.004135826999913661, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_non_binary_content": 0.003133163999905264, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_save_to_file_behavior[False-expected_properties0]": 0.027738595000073474, - "src/backend/tests/unit/components/data/test_api_request_component.py::test_save_to_file_behavior[True-expected_properties1]": 0.030151372000091214, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_all_versions_have_a_file_name_defined": 0.0016725350000115213, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.0.19]": 0.032816001000014694, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.1.0]": 0.03202262899992547, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.1.1]": 0.03746498700002121, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_as_dataframe": 0.005658422000010432, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_component_build_with_multithreading": 0.004172764999907486, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_invalid_type": 0.003730208999968454, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_depth": 0.004647954999995818, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_hidden_files": 0.004084922000060942, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_multithreading": 0.004304443000137326, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types0-1]": 0.0039746559999684905, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types1-1]": 0.003938699000059387, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types2-2]": 0.004062961000045107, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_without_mocks": 0.2218301010001369, - "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_latest_version": 0.006066663999945376, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_all_versions_have_a_file_name_defined": 0.0013477469998406377, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.0.19]": 0.2437144159998752, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.1.0]": 0.24403939400008312, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.1.1]": 0.23681412400014779, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_latest_version": 0.005648593000159963, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component": 0.0033352719999584224, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_as_dataframe": 0.003928279000092516, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_fetch_content_text": 0.003028959999937797, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_invalid_urls": 0.0025603640001463646, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_multiple_urls": 0.0030304019999221055, - "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_request_success": 0.005371163999939199, - "src/backend/tests/unit/components/git/test_git_component.py::test_check_content_pattern": 0.003002129000037712, - "src/backend/tests/unit/components/git/test_git_component.py::test_check_file_patterns": 0.0028675579999344336, - "src/backend/tests/unit/components/git/test_git_component.py::test_combined_filter": 0.0032535290000623718, - "src/backend/tests/unit/components/git/test_git_component.py::test_is_binary": 0.0030109150000043883, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_add_metadata_failure": 0.0038790380000364166, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_add_metadata_success": 0.003849411999908625, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_all_versions_have_a_file_name_defined": 0.001817416999983834, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_error_with_metadata": 0.004582501999948363, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_error_without_metadata": 0.004833359999906861, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_without_metadata": 0.006041897000159224, + "src/backend/tests/unit/base/tools/test_component_toolkit.py::test_component_tool": 0.004078892000165979, + "src/backend/tests/unit/base/tools/test_component_toolkit.py::test_component_tool_with_api_key": 5.218329284999868, + "src/backend/tests/unit/base/tools/test_create_schema.py::test_create_schema": 0.0019507929998781037, + "src/backend/tests/unit/base/tools/test_toolmodemixin.py::test_component_inputs_toolkit": 0.006940400999951635, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_all_versions_have_a_file_name_defined": 0.0015044159999888507, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_build_config_update": 0.019166466000001492, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.0.19]": 0.0014878760000556213, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.1.0]": 0.0014412579999998343, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_component_versions[1.1.1]": 0.00154606400008106, + "src/backend/tests/unit/components/agents/test_agent_component.py::TestAgentComponent::test_latest_version": 0.00913349699999344, + "src/backend/tests/unit/components/agents/test_agent_component.py::test_agent_component_with_calculator": 17.80262785900004, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_end_event": 0.0025070039999945948, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_start_event": 0.002880381999943893, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_chain_stream_event": 0.0023350809999556077, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_empty_data": 0.001618509999957496, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_no_output": 0.0016198219999523644, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_with_empty_return_values": 0.0016165359999149587, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_end_with_output": 0.001678080000033333, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_start_no_input": 0.0016086709999854065, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_start_with_input": 0.0016943929998660678, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_stream_no_output": 0.0018991339999274715, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_chain_stream_with_output": 0.0016469740000957245, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_end": 0.0016927379999742698, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_error": 0.0016675719999739158, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_handle_on_tool_start": 0.0016379370001686766, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_multiple_events": 0.002681418999941343, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_end_event": 0.002539264000120056, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_error_event": 0.0025429800000438263, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_tool_start_event": 0.0027232880000838122, + "src/backend/tests/unit/components/agents/test_agent_events.py::test_unknown_event": 0.0027615209999112267, + "src/backend/tests/unit/components/agents/test_tool_calling_agent.py::test_tool_calling_agent_component": 19.27593166600002, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_all_versions_have_a_file_name_defined": 0.001432320999924741, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_basic_setup": 0.003232482999919739, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.0.19]": 0.0014223040000160836, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.1.0]": 0.0014194069999575731, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_component_versions[1.1.1]": 0.0013627219999534645, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_empty_transcript_handling": 0.004455893999875116, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_data_output_success": 0.004044080999960897, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_dataframe_output_success": 0.005277730999978303, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_get_message_output_success": 0.003821463999884145, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_latest_version": 0.007643951999966703, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_no_transcript_found_error": 0.00365851899982772, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_transcript_disabled_error": 0.004348701999788318, + "src/backend/tests/unit/components/bundles/youtube/test_youtube_transcript_component.py::TestYouTubeTranscriptsComponent::test_translation_setting": 0.003182889000072464, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_httpx_metadata_behavior[False-expected_properties0]": 0.028548950000072182, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_httpx_metadata_behavior[True-expected_properties1]": 0.027786173000095005, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_parse_curl": 0.0032750810000834463, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_binary_content": 0.003148083000155566, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_default_filename": 0.004143997000028321, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_filename_from_content_disposition": 0.004162924999945972, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_response_info_non_binary_content": 0.0030930410000564734, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_save_to_file_behavior[False-expected_properties0]": 0.027412414999957946, + "src/backend/tests/unit/components/data/test_api_request_component.py::test_save_to_file_behavior[True-expected_properties1]": 0.02957047400002466, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_all_versions_have_a_file_name_defined": 0.0016556809999883626, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.0.19]": 0.18075690299997405, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.1.0]": 0.17488315900004636, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_component_versions[1.1.1]": 0.13019235399997342, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_as_dataframe": 0.00531096300005629, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_component_build_with_multithreading": 0.004194843000050241, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_invalid_type": 0.0035612159999800497, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_depth": 0.004676043999893409, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_hidden_files": 0.004064259000074344, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_multithreading": 0.004342110000152388, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types0-1]": 0.003965093000147135, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types1-1]": 0.003955655999902774, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_with_types[file_types2-2]": 0.004100245999893559, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_directory_without_mocks": 0.2225345430000516, + "src/backend/tests/unit/components/data/test_directory_component.py::TestDirectoryComponent::test_latest_version": 0.006081475999963004, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_all_versions_have_a_file_name_defined": 0.0013420220001307825, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.0.19]": 0.4601576490001662, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.1.0]": 0.48694014900002003, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_component_versions[1.1.1]": 0.46687815600000704, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_latest_version": 0.005755726000074901, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component": 0.003337829999964015, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_as_dataframe": 0.003919449000022723, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_fetch_content_text": 0.0029862720001574417, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_invalid_urls": 0.0025333329999739362, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_component_multiple_urls": 0.0030128509999940434, + "src/backend/tests/unit/components/data/test_url_component.py::TestURLComponent::test_url_request_success": 0.005345929999975851, + "src/backend/tests/unit/components/git/test_git_component.py::test_check_content_pattern": 0.0029848710000806022, + "src/backend/tests/unit/components/git/test_git_component.py::test_check_file_patterns": 0.002824029000180417, + "src/backend/tests/unit/components/git/test_git_component.py::test_combined_filter": 0.0032094209999513623, + "src/backend/tests/unit/components/git/test_git_component.py::test_is_binary": 0.0029758919998812416, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_add_metadata_failure": 0.0037876930000493303, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_add_metadata_success": 0.0037714930000447566, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_all_versions_have_a_file_name_defined": 0.001737813999852733, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_error_with_metadata": 0.004469649999919056, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_error_without_metadata": 0.004397704999973939, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_without_metadata": 0.005621598000061567, "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_batch_run_without_system_message": 0.004009337000013602, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.0.19]": 0.0017983689999709895, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.1.0]": 0.001763884000069993, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.1.1]": 0.0021948610000208646, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_create_base_row": 0.0038513959998454084, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_empty_dataframe": 0.005351436999944781, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_invalid_column_name": 0.004975346000037462, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_latest_version": 0.007784233999927892, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_metadata_disabled": 0.003817403000084596, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_non_string_column_conversion": 0.006281384999965667, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_operational_error_with_metadata": 0.005693816999951196, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_operational_error_without_metadata": 0.005423953999866171, - "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_successful_batch_run_with_system_message": 0.023079048999989027, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_all_versions_have_a_file_name_defined": 0.0014232680001668996, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.0.19]": 0.001476427999932639, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.1.0]": 0.0014179199999944103, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.1.1]": 0.0018704560000060155, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_correctly_builds_output_model": 0.0028715360000433066, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_empty_output_schema": 0.0022572770000124365, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_handles_multiple_outputs": 0.002840046000073926, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.0.19]": 0.0017086999999946784, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.1.0]": 0.0017077279999284656, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_component_versions[1.1.1]": 0.0026283430000830776, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_create_base_row": 0.0037820530000090002, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_empty_dataframe": 0.005271090999940498, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_invalid_column_name": 0.004861593999976321, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_latest_version": 0.007608367000102589, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_metadata_disabled": 0.003753299000095467, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_non_string_column_conversion": 0.006139306999898508, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_operational_error_with_metadata": 0.0058388740000054895, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_operational_error_without_metadata": 0.005367911999996977, + "src/backend/tests/unit/components/helpers/test_batch_run_component.py::TestBatchRunComponent::test_successful_batch_run_with_system_message": 0.021529365999981565, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_all_versions_have_a_file_name_defined": 0.001377479000097992, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.0.19]": 0.0013986289999365908, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.1.0]": 0.001406445000156964, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_component_versions[1.1.1]": 0.0018193260000316513, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_correctly_builds_output_model": 0.002916139999911138, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_empty_output_schema": 0.0022439419999500387, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_handles_multiple_outputs": 0.002909648000013476, "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_invalid_llm_config": 0.42860454198671505, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_invalid_output_schema_type": 0.0022563539999964632, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_large_input_value": 0.004760062999935144, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_latest_version": 0.005861869999876035, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_nested_output_schema": 0.004218612000045141, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_raises_value_error_for_unsupported_language_model": 0.0023609719999058143, - "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_successful_structured_output_generation_with_patch_with_config": 0.0035485099999732483, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_all_versions_have_a_file_name_defined": 5.237350092999918, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_invalid_output_schema_type": 0.0022006299998338363, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_large_input_value": 0.00423017200000686, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_latest_version": 0.005575922000048195, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_nested_output_schema": 0.004233037000062723, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_raises_value_error_for_unsupported_language_model": 0.0022418980000793454, + "src/backend/tests/unit/components/helpers/test_structured_output_component.py::TestStructuredOutputComponent::test_successful_structured_output_generation_with_patch_with_config": 0.0034525550000807925, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_all_versions_have_a_file_name_defined": 6.342657620999944, "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.0.17]": 4.332370791060384, "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.0.18]": 3.6762167080305517, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.0.19]": 5.2613322500000095, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.1.0]": 5.28263946900006, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.1.1]": 5.308390478999968, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_latest_version": 6.419542673000024, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response": 5.325183908000099, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_ai_sender": 5.271531282999831, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_with_files": 5.3498731270000235, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_without_session": 5.224997352000059, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_storage_disabled": 5.281375403999959, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_all_versions_have_a_file_name_defined": 0.0012896700001192585, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.0.19]": 5.486039150999886, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.1.0]": 5.337181082000029, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_component_versions[1.1.1]": 5.353859342999954, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_latest_version": 5.17093009000007, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response": 5.209328139000036, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_ai_sender": 5.149468036000144, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_with_files": 5.218150286999958, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_response_without_session": 5.158259664999946, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestChatInput::test_message_storage_disabled": 5.2024283479998985, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_all_versions_have_a_file_name_defined": 0.0013137099999767088, "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.0.17]": 0.26945149997482076, "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.0.18]": 0.28087970800697803, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.0.19]": 0.030623834000152783, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.1.0]": 0.029781234000097356, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.1.1]": 0.033863316000065424, - "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_latest_version": 0.0043443179999940185, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_all_versions_have_a_file_name_defined": 5.297654705000014, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_build_flow_loop": 6.379731496999966, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.0.19]": 6.649818602000096, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.1.0]": 5.395609759999957, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.1.1]": 5.428192047000152, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_latest_version": 5.3689526389999855, - "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_run_flow_loop": 6.806842683999889, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.0.19]": 0.042366688000129216, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.1.0]": 0.040225595000038084, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_component_versions[1.1.1]": 0.038500808999970104, + "src/backend/tests/unit/components/inputs/test_input_components.py::TestTextInputComponent::test_latest_version": 0.004284374000008029, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_all_versions_have_a_file_name_defined": 6.594982899999991, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_build_flow_loop": 6.160052460999964, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.0.19]": 5.164161015000104, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.1.0]": 5.24700450499995, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_component_versions[1.1.1]": 5.210649581999974, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_latest_version": 5.215603565999913, + "src/backend/tests/unit/components/logic/test_loop.py::TestLoopComponentWithAPI::test_run_flow_loop": 6.558641394000119, "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_build_model": 0.0020211669616401196, "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_get_model_failure": 0.0068002091138623655, "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_get_model_success": 0.015780292043928057, @@ -289,72 +289,72 @@ "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_update_build_config_mirostat_disabled": 0.0013394170091487467, "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_update_build_config_mirostat_enabled": 0.0016756660188548267, "src/backend/tests/unit/components/models/test_ChatOllama_component.py::test_update_build_config_model_name": 0.0062951669679023325, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_empty_str_endpoint": 0.0011132610000004206, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_invalid_endpoint": 0.0010469170000533268, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_none_endpoint": 0.0015209130000357618, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[AquilaChat-7B]": 0.001051635999942846, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[BLOOMZ-7B]": 0.0010884240001587386, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ChatGLM2-6B-32K]": 0.0010366169998405894, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[EB-turbo-AppBuilder]": 0.0010729450000326324, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE 3.5]": 0.0010422279999602324, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE Speed-AppBuilder]": 0.0010140449999198609, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE Speed]": 0.0010275009998395035, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-3.5-8K]": 0.0017430479999802628, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-4.0-8K]": 0.0014378679999254018, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot-4]": 0.001028261999863389, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot-turbo-AI]": 0.00107218399989506, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot]": 0.0010511740000538339, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Lite-8K-0308]": 0.0010557120000385112, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed-128k]": 0.001011631999972451, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed-8K]": 0.0010454450000452198, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed]": 0.0011078609999231048, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-13b-chat]": 0.0010602020000760604, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-70b-chat]": 0.0010404560001688878, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-7b-chat]": 0.001037940000060189, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Mixtral-8x7B-Instruct]": 0.0010154880000072808, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-BLOOMZ-7B-compressed]": 0.001053810000030353, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-Chinese-Llama-2-13B]": 0.00103068600003553, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-Chinese-Llama-2-7B]": 0.0010463649999792324, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[XuanYuan-70B-Chat-4bit]": 0.001033642000038526, - "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Yi-34B-Chat]": 0.0010266990001355225, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_build_model": 0.08966603999988365, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_get_model_failure": 0.02776404899998397, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_get_model_success": 0.03017493499999091, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_keep_alive": 0.004077701999904093, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_mirostat_disabled": 0.003998604999992494, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_mirostat_enabled": 0.0036588180000762804, - "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_model_name": 0.12614467800005968, - "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_build_model": 0.003407398000035755, - "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_error_handling": 0.004596252000055756, - "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_get_models": 0.0032267520000459626, - "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_initialization": 0.00296955099997831, - "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_template": 0.022719568000070467, - "src/backend/tests/unit/components/models/test_huggingface.py::test_huggingface_inputs": 0.002896284000144078, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_all_versions_have_a_file_name_defined": 0.0013800689999925453, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_build_model": 0.003266694999865649, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_build_model_error": 0.004248221000011654, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.0.19]": 0.0013739969999733148, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.1.0]": 0.0013587699999106917, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.1.1]": 0.0017270289999942179, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_get_models": 0.003174613000055615, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_get_models_no_api_key": 0.0028104030000122293, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_initialization": 0.0026649010000028284, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_inputs": 0.002870736000090801, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_json_mode": 0.0033607330000222646, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_latest_version": 0.006367731999944226, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_template": 0.023892853000006653, - "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_update_build_config": 0.13428266099992925, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_all_versions_have_a_file_name_defined": 5.389856658999975, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.0.19]": 6.055658990999859, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.1.0]": 5.440386771000021, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.1.1]": 6.941632704999847, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_invalid_input": 5.44913464800004, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_latest_version": 5.4969262480000225, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_data_input": 5.443224614999849, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_dataframe_input": 5.504063780000024, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_list_input": 5.4311487920000445, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_message_input": 5.546038693000014, - "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_string_input": 5.502624549000075, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_empty_str_endpoint": 0.0009779819999948813, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_invalid_endpoint": 0.0010235470000452551, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_none_endpoint": 0.0013702659998671152, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[AquilaChat-7B]": 0.0009726519999730954, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[BLOOMZ-7B]": 0.0009623429999692235, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ChatGLM2-6B-32K]": 0.0009411129999534751, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[EB-turbo-AppBuilder]": 0.0009769790000291323, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE 3.5]": 0.0009387589999505508, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE Speed-AppBuilder]": 0.0010276250000060827, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE Speed]": 0.0009447999999565582, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-3.5-8K]": 0.0018182849998993333, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-4.0-8K]": 0.0013353909999977986, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot-4]": 0.0009458509999831222, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot-turbo-AI]": 0.0009379270001090845, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Bot]": 0.0009494380000205638, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Lite-8K-0308]": 0.0009950229999731164, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed-128k]": 0.000929069999983767, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed-8K]": 0.0009505499999704625, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[ERNIE-Speed]": 0.0009320760000264272, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-13b-chat]": 0.0009771100001216837, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-70b-chat]": 0.0009983610000290355, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Llama-2-7b-chat]": 0.0009493680000787208, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Mixtral-8x7B-Instruct]": 0.0009808869999687886, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-BLOOMZ-7B-compressed]": 0.0009456310000359736, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-Chinese-Llama-2-13B]": 0.0009493579998434143, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Qianfan-Chinese-Llama-2-7B]": 0.0009800459998814404, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[XuanYuan-70B-Chat-4bit]": 0.0009625530000221261, + "src/backend/tests/unit/components/models/test_baidu_qianfan.py::test_qianfan_different_models[Yi-34B-Chat]": 0.0009738439998727699, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_build_model": 0.08471301600013703, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_get_model_failure": 0.026380023000115216, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_get_model_success": 0.02833473500004402, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_keep_alive": 0.0036711550000063653, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_mirostat_disabled": 0.0036210609999898224, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_mirostat_enabled": 0.003558371999929477, + "src/backend/tests/unit/components/models/test_chatollama_component.py::test_update_build_config_model_name": 0.12137781000001269, + "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_build_model": 0.0032100509999963833, + "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_error_handling": 0.0032851230000687792, + "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_get_models": 0.0030613830000447706, + "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_initialization": 0.0026764630000570833, + "src/backend/tests/unit/components/models/test_deepseek.py::test_deepseek_template": 0.02186113999994177, + "src/backend/tests/unit/components/models/test_huggingface.py::test_huggingface_inputs": 0.002819750999833559, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_all_versions_have_a_file_name_defined": 0.0013007770000967867, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_build_model": 0.0031030520000285833, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_build_model_error": 0.005012566999994306, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.0.19]": 0.001318767999919146, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.1.0]": 0.0012789139999540566, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_component_versions[1.1.1]": 0.0017367330000297443, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_get_models": 0.003059529999973165, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_get_models_no_api_key": 0.0025525300001163487, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_initialization": 0.002580441999953109, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_inputs": 0.002667054999960783, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_json_mode": 0.0032759660000465374, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_latest_version": 0.006224186000054033, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_template": 0.023014780999915274, + "src/backend/tests/unit/components/models/test_xai.py::TestXAIComponent::test_update_build_config": 0.2900248850000935, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_all_versions_have_a_file_name_defined": 5.203395104999913, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.0.19]": 5.196965007000017, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.1.0]": 6.799318621999987, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_component_versions[1.1.1]": 5.424190279000072, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_invalid_input": 5.212167406999924, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_latest_version": 5.201249156000017, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_data_input": 5.291957158000059, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_dataframe_input": 5.264873336000051, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_list_input": 5.152700448000132, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_message_input": 5.182617531999995, + "src/backend/tests/unit/components/outputs/test_chat_output_component.py::TestChatOutput::test_process_string_input": 5.148619775000043, "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_all_versions_have_a_file_name_defined": 4.963613892000012, "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_component_versions[1.0.17]": 3.6106157921021804, "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_component_versions[1.0.18]": 3.6919090420706198, @@ -362,707 +362,727 @@ "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_component_versions[1.1.0]": 4.997824592000029, "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_component_versions[1.1.1]": 5.098571616000072, "src/backend/tests/unit/components/outputs/test_output_components.py::TestChatOutput::test_latest_version": 6.680932718999998, - "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_all_versions_have_a_file_name_defined": 0.0013278109998964283, + "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_all_versions_have_a_file_name_defined": 0.0013107519998811767, "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.0.17]": 0.27941045799525455, "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.0.18]": 0.24612879107007757, - "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.0.19]": 0.03106373100001747, - "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.1.0]": 0.03283425000006446, - "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.1.1]": 0.030333580000046823, - "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_latest_version": 0.0046174489998520585, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_all_versions_have_a_file_name_defined": 0.0013352250000480126, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_basic_setup": 0.0025623179999456625, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_build_dataframe_basic": 0.003111454000077174, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.0.19]": 0.001317562999929578, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.1.0]": 0.0013388610001356938, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.1.1]": 0.0013058100000762352, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_data_without_data_dict": 0.002587234000088756, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_data_without_text": 0.002573657999846546, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_empty_data_list": 0.0025796589999345088, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_invalid_input_type": 0.0021181869999509217, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_latest_version": 0.005154721999929279, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_mixed_data_fields": 0.002862137000192888, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_single_data_input": 0.0026974899999459012, - "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_status_update": 0.002590149999946334, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_empty_dataframe": 0.002534545999992588, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_invalid_operation": 0.0026964980000911964, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_non_existent_column": 0.002455187999998998, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Add Column-expected_columns0-expected_values0]": 0.003410893000022952, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Drop Column-expected_columns1-None]": 0.0032848770000555305, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Filter-expected_columns2-expected_values2]": 0.0032384899999442496, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Head-expected_columns6-expected_values6]": 0.0028956300000118063, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Rename Column-expected_columns4-None]": 0.0029422980001072574, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Replace Value-expected_columns8-expected_values8]": 0.0031247589998883996, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Select Columns-expected_columns5-None]": 0.003180072999953154, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Sort-expected_columns3-expected_values3]": 0.0031897009998829162, - "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Tail-expected_columns7-expected_values7]": 0.0028442540000241934, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_all_versions_have_a_file_name_defined": 0.0017459810001128062, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_async_invocation": 0.0037740819999498854, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.0.19]": 0.001783000999921569, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.1.0]": 0.002246206999984679, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.1.1]": 0.001837032000025829, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_empty_dataframe": 0.0027113570000665277, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_invalid_template_keys": 0.0027536349998626974, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_large_dataframe": 0.42694342500010407, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_latest_version": 0.005367349000039212, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_multiple_column_template": 0.0030378359998621818, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_nan_values": 0.002958838000040487, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_parse_with_custom_separator": 0.0028818040000260225, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_parse_with_custom_template": 0.002956654000058734, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_successful_parse_with_default_template": 0.0030106350000096427, - "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_various_data_types": 0.0045599200000197015, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_all_versions_have_a_file_name_defined": 0.002011788999993769, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_basic_setup": 0.002914766000117197, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.0.19]": 0.0019247060000679994, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.1.0]": 0.0025959490001241647, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.1.1]": 0.0018475620000799609, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_directory_creation": 0.00367936500003907, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_invalid_input_type": 0.002802095999982157, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_latest_version": 0.007452564999994138, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_save_data": 0.0038740789998428227, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_save_message": 0.00791695299994899, - "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_update_build_config_dataframe": 0.00279062300012356, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_all_versions_have_a_file_name_defined": 0.0013954859999785185, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.0.19]": 0.03430600999990929, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.1.0]": 0.03258797999990293, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.1.1]": 0.03304913000010856, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_latest_version": 0.005498623999983465, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_as_dataframe": 0.003228793000062069, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_basic": 0.0025514670001030026, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_custom_separator": 0.0024212349998151694, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_empty_input": 0.002022699000008288, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_multiple_inputs": 0.0024089410001124634, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_single_chunk": 0.0020568640001101812, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_dataframe_input": 0.0031667370000150186, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_metadata": 0.0020903750000798027, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_overlap": 0.002071982000074968, - "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_with_url_loader": 2.1492824279999923, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_all_versions_have_a_file_name_defined": 5.419219217000091, + "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.0.19]": 0.04174228100009714, + "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.1.0]": 0.1336554800000158, + "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_component_versions[1.1.1]": 0.19201293900005112, + "src/backend/tests/unit/components/outputs/test_output_components.py::TestTextOutputComponent::test_latest_version": 0.004368633000012778, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_all_versions_have_a_file_name_defined": 0.001334406000069066, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_basic_setup": 0.0022320070002024295, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_build_dataframe_basic": 0.003228620999834675, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.0.19]": 0.001425396000058754, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.1.0]": 0.001561412000000928, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_component_versions[1.1.1]": 0.0018199240000740247, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_data_without_data_dict": 0.002690113000198835, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_data_without_text": 0.002683220000108122, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_empty_data_list": 0.0026505790001465357, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_invalid_input_type": 0.00218741300000147, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_latest_version": 0.0050556289997985004, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_mixed_data_fields": 0.0029798969999319525, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_single_data_input": 0.0027979750000213244, + "src/backend/tests/unit/components/processing/test_data_to_dataframe_component.py::TestDataToDataFrameComponent::test_status_update": 0.00262310800007981, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_empty_dataframe": 0.002604513999813207, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_invalid_operation": 0.0024725259997921967, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_non_existent_column": 0.0025149750001673965, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Add Column-expected_columns0-expected_values0]": 0.0034355090001554345, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Drop Column-expected_columns1-None]": 0.00332620299991504, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Filter-expected_columns2-expected_values2]": 0.003274405999945884, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Head-expected_columns6-expected_values6]": 0.0029472440003246447, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Rename Column-expected_columns4-None]": 0.0030022380001355486, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Replace Value-expected_columns8-expected_values8]": 0.003188825000279394, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Select Columns-expected_columns5-None]": 0.003173657999923307, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Sort-expected_columns3-expected_values3]": 0.0032194640000398067, + "src/backend/tests/unit/components/processing/test_dataframe_operations.py::test_operations[Tail-expected_columns7-expected_values7]": 0.002914182000040455, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_all_versions_have_a_file_name_defined": 0.0018440799999552837, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_async_invocation": 0.003536816999940129, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.0.19]": 0.0017362690000481962, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.1.0]": 0.0020554759998958616, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_component_versions[1.1.1]": 0.0016729399997075234, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_empty_dataframe": 0.002661498999941614, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_invalid_template_keys": 0.0026976379999723576, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_large_dataframe": 0.412516697999763, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_latest_version": 0.005270662000157245, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_multiple_column_template": 0.0029201040001680667, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_nan_values": 0.0028526119999696675, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_parse_with_custom_separator": 0.0027660350001497136, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_parse_with_custom_template": 0.002833251999845743, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_successful_parse_with_default_template": 0.0029165969997393404, + "src/backend/tests/unit/components/processing/test_parse_dataframe_component.py::TestParseDataFrameComponent::test_various_data_types": 0.004403644000149143, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_all_versions_have_a_file_name_defined": 0.0017686020000837743, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_basic_setup": 0.002687412000113909, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.0.19]": 0.0018825050001396448, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.1.0]": 0.0022765530000015133, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_component_versions[1.1.1]": 0.0017316820001269662, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_directory_creation": 0.0036253079999823967, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_invalid_input_type": 0.002791296999930637, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_latest_version": 0.0065301290001116286, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_save_data": 0.0038223159999688505, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_save_message": 0.007435823999912827, + "src/backend/tests/unit/components/processing/test_save_to_file_component.py::TestSaveToFileComponent::test_update_build_config_dataframe": 0.002610149000020101, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_all_versions_have_a_file_name_defined": 0.001408398000194211, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.0.19]": 0.04058357799999612, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.1.0]": 0.0431532199997946, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_component_versions[1.1.1]": 0.0403390709998348, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_latest_version": 0.00518268599989824, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_as_dataframe": 0.0029908409999279684, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_basic": 0.0022785870000916475, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_custom_separator": 0.0022184949998518277, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_empty_input": 0.001975397999785855, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_multiple_inputs": 0.002396307999788405, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_single_chunk": 0.002096647000144003, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_dataframe_input": 0.0030032739998659963, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_metadata": 0.002058775000023161, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_split_text_with_overlap": 0.0020055749998846295, + "src/backend/tests/unit/components/processing/test_split_text_component.py::TestSplitTextComponent::test_with_url_loader": 2.3455528209999557, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_all_versions_have_a_file_name_defined": 5.358941426999991, "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.0.17]": 15.071019583090674, "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.0.18]": 5.277748624968808, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.0.19]": 5.440978005000034, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.1.0]": 5.424299841999982, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.1.1]": 6.926264650000007, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_latest_version": 5.64464458000009, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_post_code_processing": 5.355054827999879, - "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_prompt_component_latest": 5.396206333999999, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_build_data": 0.00204307100011647, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_get_data": 0.0016740410000011252, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_update_build_config": 0.0023180859999456516, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_update_build_config_exceed_limit": 0.0017462250000335189, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_validate_text_key_invalid": 0.0017198760000383118, - "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_validate_text_key_valid": 0.0016240389999211402, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_build_data": 0.0024563450000414377, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_get_data": 0.002069290999884288, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_update_build_config": 0.002271779000125207, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_update_build_config_exceed_limit": 0.0021344829999634385, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_validate_text_key_invalid": 0.0021118599998999343, - "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_validate_text_key_valid": 0.0021082929999920452, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_all_versions_have_a_file_name_defined": 5.4758364130000245, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_build_query_url": 5.34932902900016, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_component_initialization": 5.399844470000062, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_component_versions": 5.801395946000071, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_invalid_url_handling": 5.685849211999994, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_latest_version": 5.392962634000128, - "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_parse_atom_response": 5.417159111000274, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_all_versions_have_a_file_name_defined": 0.0013921149998168403, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_basic_calculation": 0.0023984970000583417, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_complex_calculation": 0.002388796999639453, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_frontend_node": 0.003353814000092825, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.0.19]": 0.0013601649998236098, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.1.0]": 0.0013213019999511744, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.1.1]": 0.0021633769999880315, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_division_by_zero": 0.0022153940001317096, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_invalid_expression": 0.0022052859997074847, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_latest_version": 0.005711914999892542, - "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_unsupported_operation": 0.0022067580000566522, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_all_versions_have_a_file_name_defined": 0.0013223950002156926, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_build_method": 0.0025849359999483568, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_initialization": 0.0045741359997464315, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.0.19]": 0.0012733810001464008, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.1.0]": 0.0012877589999789052, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.1.1]": 0.001747189000070648, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_latest_version": 0.002850280999609822, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_error_handling": 0.003987127999835138, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_invalid_api_key": 0.002706082000031529, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_invalid_cse_id": 0.002734164999992572, - "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_success": 0.007379426000170497, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_build_method": 0.001913399000386562, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_build_wrapper": 0.0019662079998852278, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_component_initialization": 0.001976587999934054, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_search_serper_error_handling": 0.003030568999975003, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_search_serper_success": 0.00331795700026305, - "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_text_search_serper": 0.00604327499968349, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_all_versions_have_a_file_name_defined": 0.001340727000069819, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_initialization": 0.004932005999762623, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.0.19]": 0.0013308780003171705, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.1.0]": 0.001313885999707054, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.1.1]": 0.0012910460002331092, - "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_latest_version": 0.00542199200003779, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.0.19]": 5.260177901999668, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.1.0]": 5.241185746000156, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_component_versions[1.1.1]": 5.299986198999932, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_latest_version": 6.841818643000124, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_post_code_processing": 5.228177048999669, + "src/backend/tests/unit/components/prompts/test_prompt_component.py::TestPromptComponent::test_prompt_component_latest": 5.265363515999979, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_build_data": 0.0020384569997986546, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_get_data": 0.001619623000124193, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_update_build_config": 0.002287403000082122, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_update_build_config_exceed_limit": 0.0017898109999805456, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_validate_text_key_invalid": 0.0017470910001975426, + "src/backend/tests/unit/components/prototypes/test_create_data_component.py::test_validate_text_key_valid": 0.0016301119997024216, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_build_data": 0.002451579999842579, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_get_data": 0.002052151000043523, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_update_build_config": 0.0023874999997133273, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_update_build_config_exceed_limit": 0.002103559000261157, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_validate_text_key_invalid": 0.0021014349999859405, + "src/backend/tests/unit/components/prototypes/test_update_data_component.py::test_validate_text_key_valid": 0.0020669109997015767, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_all_versions_have_a_file_name_defined": 5.273063310000225, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_build_query_url": 5.250197363000325, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_component_initialization": 5.262163093000254, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_component_versions": 5.234535743000151, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_invalid_url_handling": 7.034768615000075, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_latest_version": 5.334784596999725, + "src/backend/tests/unit/components/tools/test_arxiv_component.py::TestArXivComponent::test_parse_atom_response": 5.212810046999948, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_all_versions_have_a_file_name_defined": 0.001387037999847962, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_basic_calculation": 0.002305154999930892, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_complex_calculation": 0.0024013269999159093, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_frontend_node": 0.003332109000211858, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.0.19]": 0.0014328019997265073, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.1.0]": 0.0013665079998190777, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_component_versions[1.1.1]": 0.002179179999984626, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_division_by_zero": 0.0022256579998156667, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_invalid_expression": 0.0022248069999477593, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_latest_version": 0.005654356999912125, + "src/backend/tests/unit/components/tools/test_calculator.py::TestCalculatorComponent::test_unsupported_operation": 0.0022525070000938285, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_all_versions_have_a_file_name_defined": 0.0013058549998277158, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_build_method": 0.0027513610002642963, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_initialization": 0.004478024999798436, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.0.19]": 0.0013100729997859162, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.1.0]": 0.0013335870000901195, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_component_versions[1.1.1]": 0.0017685200002688362, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_latest_version": 0.0028257189999294496, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_error_handling": 0.004139670000085971, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_invalid_api_key": 0.002684155999986615, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_invalid_cse_id": 0.002715904999831764, + "src/backend/tests/unit/components/tools/test_google_search_api.py::TestGoogleSearchAPICore::test_search_google_success": 0.007290218999969511, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_build_method": 0.001939891000120042, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_build_wrapper": 0.001979166999944937, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_component_initialization": 0.0020535960004508524, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_search_serper_error_handling": 0.0029780159998153977, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_search_serper_success": 0.003352078000034453, + "src/backend/tests/unit/components/tools/test_google_serper_api_core.py::test_text_search_serper": 0.0060297910001736454, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_all_versions_have_a_file_name_defined": 0.001316884999823742, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_initialization": 0.0042690029999903345, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.0.19]": 0.0013224349997926765, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.1.0]": 0.0013311229997725604, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_component_versions[1.1.1]": 0.0013200519997553783, + "src/backend/tests/unit/components/tools/test_python_repl_tool.py::TestPythonREPLComponent::test_latest_version": 0.005298961000107738, "src/backend/tests/unit/components/tools/test_python_repl_tool.py::test_python_repl_tool_template": 0.02093030200001067, - "src/backend/tests/unit/components/tools/test_serp_api.py::test_error_handling": 0.002975676999767529, - "src/backend/tests/unit/components/tools/test_serp_api.py::test_fetch_content": 0.0031520560000899422, - "src/backend/tests/unit/components/tools/test_serp_api.py::test_fetch_content_text": 0.0028684049998446426, - "src/backend/tests/unit/components/tools/test_serp_api.py::test_serpapi_initialization": 0.002946421999922677, - "src/backend/tests/unit/components/tools/test_serp_api.py::test_serpapi_template": 0.026727961999768013, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_all_versions_have_a_file_name_defined": 0.001307557000018278, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.0.19]": 0.0013290260001213028, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.1.0]": 0.0012892830000055255, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.1.1]": 0.0012661579996802175, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_empty_response": 0.003480750000107946, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_error_handling": 0.0033688419998725294, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_success": 0.0034949180001149216, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_text": 0.002994451999938974, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_latest_version": 0.006398780999916198, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_wikidata_initialization": 0.003144572999644879, - "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_wikidata_template": 0.016435648000197034, + "src/backend/tests/unit/components/tools/test_serp_api.py::test_error_handling": 0.0029697310003484745, + "src/backend/tests/unit/components/tools/test_serp_api.py::test_fetch_content": 0.003047766000008778, + "src/backend/tests/unit/components/tools/test_serp_api.py::test_fetch_content_text": 0.0028493340000750322, + "src/backend/tests/unit/components/tools/test_serp_api.py::test_serpapi_initialization": 0.0027616100001068844, + "src/backend/tests/unit/components/tools/test_serp_api.py::test_serpapi_template": 0.026483276000135447, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_all_versions_have_a_file_name_defined": 0.0013290780000261293, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.0.19]": 0.00131686500003525, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.1.0]": 0.0013268950001474877, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_component_versions[1.1.1]": 0.0012996439998005371, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_empty_response": 0.003430815000228904, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_error_handling": 0.0033960390003358043, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_success": 0.003466980999974112, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_fetch_content_text": 0.0029829150000750815, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_latest_version": 0.006969107999793778, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_wikidata_initialization": 0.003214898000123867, + "src/backend/tests/unit/components/tools/test_wikidata_api.py::TestWikidataComponent::test_wikidata_template": 0.016327921000083734, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_fetch_content_empty_response": 0.003265670000018872, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_fetch_content_error_handling": 0.002808468000011999, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_fetch_content_success": 0.0032077419999723134, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_fetch_content_text": 0.00273625400001265, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_wikidata_initialization": 0.002704716000039298, "src/backend/tests/unit/components/tools/test_wikidata_api.py::test_wikidata_template": 0.01613066200002322, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_all_versions_have_a_file_name_defined": 0.0013839989996995428, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.0.19]": 0.0013193970000884292, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.1.0]": 0.0013463489999594458, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.1.1]": 0.0017288149999785674, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_fetch_content": 0.0029279579998728877, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_fetch_content_text": 0.0023215129999698547, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_latest_version": 0.0054054830000040965, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_error_handling": 0.0023272040000392735, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_initialization": 0.0021395910000592266, - "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_template": 0.014816327999824352, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_all_versions_have_a_file_name_defined": 0.0013243600001260347, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.0.19]": 0.001330611999719622, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.1.0]": 0.0013039320001553278, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_component_versions[1.1.1]": 0.0017341360003229056, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_fetch_content": 0.0029042479998224735, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_fetch_content_text": 0.0023286499999812804, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_latest_version": 0.00507026299987956, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_error_handling": 0.0023136419997626945, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_initialization": 0.0021095069998864346, + "src/backend/tests/unit/components/tools/test_wikipedia_api.py::TestWikipediaComponent::test_wikipedia_template": 0.01440592399990237, "src/backend/tests/unit/components/tools/test_wikipedia_api.py::test_fetch_content": 0.002685490999965623, "src/backend/tests/unit/components/tools/test_wikipedia_api.py::test_fetch_content_text": 0.001898934999985613, "src/backend/tests/unit/components/tools/test_wikipedia_api.py::test_wikipedia_error_handling": 0.0019180109999865635, "src/backend/tests/unit/components/tools/test_wikipedia_api.py::test_wikipedia_initialization": 0.0017836609999903885, "src/backend/tests/unit/components/tools/test_wikipedia_api.py::test_wikipedia_template": 0.01370607699999482, - "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_error_handling": 0.0026123680002001493, - "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_fetch_info": 0.0026705069999479747, - "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_fetch_news": 0.0025226500001735985, - "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_initialization": 0.0021873620000860683, - "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_template_structure": 0.04617983000002823, + "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_error_handling": 0.0025533610000820772, + "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_fetch_info": 0.0026498310000988567, + "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_fetch_news": 0.0025675759998193826, + "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_initialization": 0.0021775779996460187, + "src/backend/tests/unit/components/tools/test_yfinance_tool.py::TestYfinanceComponent::test_template_structure": 0.04857703500010757, "src/backend/tests/unit/components/tools/test_yfinance_tool.py::test_yfinance_tool_template": 0.03864965400003939, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_all_versions_have_a_file_name_defined": 0.0486745380001139, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data": 0.47635652099984327, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data_empty_collection": 0.10378608199994233, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data_without_metadata": 0.32527497800015226, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.0.19]": 0.4292733730001146, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.1.0]": 0.1313823410000623, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.1.1]": 0.13406486299982134, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_create_collection_with_data": 1.0384899119999318, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_create_db": 0.10434308799995051, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_duplicate_handling": 0.7603190610000183, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_latest_version": 0.05622179600027266, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_mmr_search": 3.9745003449997967, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_search_with_different_types": 1.5674386100001811, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_search_with_score": 1.3679843809998147, - "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_similarity_search": 1.3274734819999594, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_files_independence": 0.0028572920000442537, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_input_value_independence": 0.0034485489998132834, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_message_output_independence": 0.0042352890000074694, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_multiple_attributes_independence": 0.002885906999836152, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_sender_name_independence": 0.0028580650000549213, - "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_status_independence": 0.004002103000175339, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_all_versions_have_a_file_name_defined": 0.0481336730001658, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data": 2.954498457000227, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data_empty_collection": 0.13310270100009802, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_chroma_collection_to_data_without_metadata": 3.264254869000297, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.0.19]": 0.5219117629997072, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.1.0]": 0.20589661799999703, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_component_versions[1.1.1]": 0.21666925599993192, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_create_collection_with_data": 3.478515942000058, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_create_db": 0.170557676000044, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_duplicate_handling": 3.6174010949998774, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_latest_version": 0.05402200899993659, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_mmr_search": 3.2163662239995574, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_search_with_different_types": 3.4480585660000997, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_search_with_score": 3.54200191599989, + "src/backend/tests/unit/components/vectorstores/test_chroma_vector_store_component.py::TestChromaVectorStoreComponent::test_similarity_search": 3.355800120999902, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_files_independence": 0.0028779179999673943, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_input_value_independence": 0.003565124000033393, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_message_output_independence": 0.004260497000132091, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_multiple_attributes_independence": 0.0029234740002266335, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_sender_name_independence": 0.0028627499998492567, + "src/backend/tests/unit/custom/component/test_component_instance_attributes.py::test_status_independence": 0.004045854999958465, "src/backend/tests/unit/custom/component/test_component_to_tool.py::test_component_to_tool": 0.019733334018383175, "src/backend/tests/unit/custom/component/test_component_to_tool.py::test_component_to_tool_has_no_component_as_tool": 0.0017144169833045453, - "src/backend/tests/unit/custom/component/test_component_to_tool.py::test_component_to_toolkit": 0.008737064999877475, - "src/backend/tests/unit/custom/component/test_componet_set_functionality.py::test_set_with_message_text_input_list": 0.0012788910003109777, - "src/backend/tests/unit/custom/component/test_componet_set_functionality.py::test_set_with_mixed_list_input": 0.0014743270000963093, - "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_component": 0.002784687000030317, - "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_invalid_output": 0.00351191499999004, + "src/backend/tests/unit/custom/component/test_component_to_tool.py::test_component_to_toolkit": 0.005420146999767894, + "src/backend/tests/unit/custom/component/test_componet_set_functionality.py::test_set_with_message_text_input_list": 0.0012925300000006246, + "src/backend/tests/unit/custom/component/test_componet_set_functionality.py::test_set_with_mixed_list_input": 0.001478948000112723, + "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_component": 0.0027597860002970265, + "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_invalid_output": 0.0035556659997837414, "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_required_inputs": 0.0019985559999895486, "src/backend/tests/unit/custom/custom_component/test_component.py::test_set_required_inputs_various_components": 0.006992995000018709, - "src/backend/tests/unit/custom/custom_component/test_component.py::test_update_component_build_config_async": 0.014053725999929156, - "src/backend/tests/unit/custom/custom_component/test_component.py::test_update_component_build_config_sync": 0.03166828100006569, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_build_results": 7.133869496000216, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_error_handling": 5.376684631999979, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_logging": 5.40890706800019, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_message_sending": 5.411115899999913, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_streaming_message": 5.411815184000261, - "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_tool_output": 5.346240308000233, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_custom_update": 0.0017972180003198446, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_invalid_output": 0.0019474300002002565, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_output_validation": 0.001996923000206152, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_tool_mode": 0.015354190000152812, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_with_existing_tool_output": 0.002438479999682386, - "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_with_multiple_outputs": 0.0018459990001247206, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_non_registered_callback": 0.0010818129999279336, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_non_registered_event_callback_with_recommended_fix": 0.0011422149998452369, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_registered_event_callback": 0.001119181999911234, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_event_id_uniqueness_with_await": 0.0015301300002192875, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_handling_large_number_of_events": 0.002461840999785636, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_performance_impact_frequent_registrations": 0.0022477540001091256, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_queue_receives_correct_event_data_format": 0.0014916189998075424, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_empty_name": 0.0012435650000952592, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_invalid_name_fixed": 0.0012470120004763885, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_valid_name_and_callback_with_mock_callback": 0.0014032019998921896, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_valid_name_and_no_callback": 0.0011677429999963351, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_without_event_type_argument_fixed": 0.0011938719999307068, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_sending_event_with_complex_data": 0.0015187179999429645, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_sending_event_with_none_data": 0.0011326679998546751, + "src/backend/tests/unit/custom/custom_component/test_component.py::test_update_component_build_config_async": 0.013746095999977115, + "src/backend/tests/unit/custom/custom_component/test_component.py::test_update_component_build_config_sync": 0.030823026000234677, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_build_results": 5.2535780309997335, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_error_handling": 5.249050359000421, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_logging": 5.317935213999817, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_message_sending": 5.319514487000333, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_streaming_message": 5.318068004999986, + "src/backend/tests/unit/custom/custom_component/test_component_events.py::test_component_tool_output": 5.326471929000036, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_custom_update": 0.001830667000149333, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_invalid_output": 0.001943970000183981, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_output_validation": 0.0019751480001559685, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_tool_mode": 0.015392400999871825, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_with_existing_tool_output": 0.001977843999839024, + "src/backend/tests/unit/custom/custom_component/test_update_outputs.py::TestComponentOutputs::test_run_and_validate_update_outputs_with_multiple_outputs": 0.001864110000042274, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_non_registered_callback": 0.0011661919998005033, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_non_registered_event_callback_with_recommended_fix": 0.0011620650000168098, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_accessing_registered_event_callback": 0.0013681129998985853, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_event_id_uniqueness_with_await": 0.001525045999642316, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_handling_large_number_of_events": 0.0024504769999111886, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_performance_impact_frequent_registrations": 0.0019976900000528985, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_queue_receives_correct_event_data_format": 0.001768470999877536, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_empty_name": 0.001267733000076987, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_invalid_name_fixed": 0.0012519330000486661, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_valid_name_and_callback_with_mock_callback": 0.0014095580002049246, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_with_valid_name_and_no_callback": 0.0011597109999001987, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_register_event_without_event_type_argument_fixed": 0.0013091509997593676, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_sending_event_with_complex_data": 0.0015126020002753648, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_sending_event_with_none_data": 0.0011525369998253154, "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_sending_event_with_valid_type_and_data_asyncio_plugin": 0.007096707937307656, - "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_thread_safety_accessing_events_dictionary": 0.0015147819997309853, - "src/backend/tests/unit/exceptions/test_api.py::test_api_exception": 0.004023500999892349, - "src/backend/tests/unit/exceptions/test_api.py::test_api_exception_no_flow": 0.001104413999883036, - "src/backend/tests/unit/graph/edge/test_edge_base.py::test_edge_raises_error_on_invalid_target_handle": 0.028919687000097838, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_and_assign_values_fails": 0.0040969570000015665, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_fields_from_kwargs": 0.0015676100001655868, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_invalid_callable": 0.0011631430002125853, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_valid_return_type_annotations": 0.014403506000235211, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_with_multiple_components": 0.005605819000038537, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_with_pydantic_field": 0.0042144889998780855, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_default_model_name_to_state": 0.001563793000059377, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_graph_functional_start_state_update": 5.477846497000428, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_handle_empty_kwargs_gracefully": 0.0013707129999147583, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_raise_typeerror_for_invalid_field_type_in_tuple": 0.001185585999792238, + "src/backend/tests/unit/events/test_event_manager.py::TestEventManager::test_thread_safety_accessing_events_dictionary": 0.00152807000017674, + "src/backend/tests/unit/exceptions/test_api.py::test_api_exception": 0.0037897950001024583, + "src/backend/tests/unit/exceptions/test_api.py::test_api_exception_no_flow": 0.0011590699998578202, + "src/backend/tests/unit/graph/edge/test_edge_base.py::test_edge_raises_error_on_invalid_target_handle": 0.02851614100018196, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_and_assign_values_fails": 0.004178564000085316, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_fields_from_kwargs": 0.0016968869999800518, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_invalid_callable": 0.0012957450001067627, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_model_with_valid_return_type_annotations": 0.005174458000055893, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_with_multiple_components": 0.005648917000144138, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_create_with_pydantic_field": 0.0044691999999031395, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_default_model_name_to_state": 0.0016358819998458785, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_graph_functional_start_state_update": 5.303937948999874, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_handle_empty_kwargs_gracefully": 0.0014731889996255632, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_raise_typeerror_for_invalid_field_type_in_tuple": 0.0012931219998790766, "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_raise_valueerror_for_invalid_field_type_in_tuple": 0.00342700001783669, - "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_raise_valueerror_for_unsupported_value_types": 0.0012146809999649122, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph": 0.018488482000066142, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional": 0.014688304999936008, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_async_start": 0.015395076000231711, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_start": 0.015356174000089595, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_start_end": 0.024893314999872018, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_not_prepared": 0.020552493000195682, + "src/backend/tests/unit/graph/graph/state/test_state_model.py::TestCreateStateModel::test_raise_valueerror_for_unsupported_value_types": 0.0013511869999547343, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph": 0.017104966000033528, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional": 0.014368732000093587, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_async_start": 0.015228953000132606, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_start": 0.015196711999806212, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_functional_start_end": 0.025092664000112563, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_not_prepared": 0.019539363999911075, "src/backend/tests/unit/graph/graph/test_base.py::test_graph_set_with_invalid_component": 0.0009155830484814942, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_set_with_valid_component": 0.0002519909999136871, - "src/backend/tests/unit/graph/graph/test_base.py::test_graph_with_edge": 0.015878480000083073, - "src/backend/tests/unit/graph/graph/test_callback_graph.py::test_callback_graph": 0.00023078199978954217, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_conditional_router_max_iterations": 0.024424649999900794, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_cycle_in_graph": 0.00025218200016752235, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_cycle_in_graph_max_iterations": 0.022640518999878623, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_that_outputs_cache_is_set_to_false_in_cycle": 0.020398214999886477, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_updated_graph_with_max_iterations": 0.0002294290000008914, - "src/backend/tests/unit/graph/graph/test_cycles.py::test_updated_graph_with_prompts": 0.0002497760001460847, - "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_functional_start_graph_state_update": 0.023057548999759092, - "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model": 0.04629751800030135, - "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model_json_schema": 0.000304480000067997, - "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model_serialization": 0.02309432300012304, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_add_to_vertices_being_run": 0.0010994659999141732, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_are_all_predecessors_fulfilled": 0.001096069999903193, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_are_all_predecessors_fulfilled__wrong": 0.0010672370001429954, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_build_run_map": 0.0017846480000116571, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict": 0.0011855269999614393, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_run_map__bad_case": 0.0011199939997368347, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_run_predecessors__bad_case": 0.0010810429998855398, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_vertices_being_run__bad_case": 0.0010958300001675525, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_vertices_to_run__bad_case": 0.0010981650002577226, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable": 0.001122669999858772, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_is_active": 0.0010662250001587381, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_run_predecessors": 0.0010680780001166568, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_vertices_to_run": 0.001099026000019876, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_pickle": 0.0011427179997554049, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_remove_from_predecessors": 0.0010695920002490311, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_remove_vertex_from_runnables": 0.0011056180001105531, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_to_dict": 0.0011165079999955196, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_run_state": 0.001058940999882907, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_vertex_run_state": 0.0011350730001140619, - "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_vertex_run_state__bad_case": 0.001064421999899423, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_detects_cycles_in_simple_graph": 0.001049843999908262, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_disconnected_components": 0.0010510360000353103, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_duplicate_edges": 0.001081472999885591, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_identifies_multiple_cycles": 0.0010810520000177348, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_large_graphs_efficiency": 0.006109677000040392, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_mixed_data_types_in_edges": 0.001059633000068061, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_multiple_edges_between_same_nodes": 0.0010368200003085803, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_no_cycles_present": 0.0010572870000942203, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_nodes_with_no_incoming_edges": 0.0011030129996925098, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_nodes_with_no_outgoing_edges": 0.0010748699999112432, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_self_loops": 0.0010730779999903461, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_single_node_no_edges": 0.0010650219999206456, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_detects_cycle_in_simple_graph": 0.0010511559999031306, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_disconnected_components": 0.0010421690001294337, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_duplicate_edges": 0.0010398349998013146, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_empty_edges_list": 0.0010660149998784618, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_identifies_first_cycle": 0.001060323999809043, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_large_graph_efficiency": 0.0010845889996744518, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_multiple_cycles": 0.0010741789999428875, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_multiple_edges_between_same_nodes": 0.0010433930001454428, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_nodes_with_no_outgoing_edges": 0.001080481000144573, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_returns_none_when_no_cycle": 0.0010735480000221287, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_self_loop_cycle": 0.0010899189999236114, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_single_node_no_edges": 0.0010301080001227092, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_correctly_identify_and_return_vertices_in_single_cycle": 0.001084267999885924, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_detect_cycles_simple_graph": 0.00114955000003647, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_duplicate_edges_fixed_fixed": 0.0011243730000387586, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_empty_edges": 0.001052768999898035, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_large_graphs_efficiently": 0.0011118989996248274, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_no_outgoing_edges": 0.0011166280000907136, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_self_loops": 0.0011192040001333226, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_single_cycle": 0.0010671869997622707, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[0]": 0.001149489999988873, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[1]": 0.0011391600000933977, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[2]": 0.0011454830000729999, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[3]": 0.0011575959999845509, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[4]": 0.0011332179999499203, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_no_cycles_empty_list": 0.0010860630000024685, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_no_modification_of_input_edges_list": 0.001130395000018325, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_non_string_vertex_ids": 0.0011285289999705128, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_process_disconnected_components": 0.0011290819998066581, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_return_vertices_involved_in_multiple_cycles": 0.0011046659999465192, - "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_single_vertex_no_edges": 0.0010436120001031668, - "src/backend/tests/unit/graph/graph/test_utils.py::test_chat_inputs_at_start": 0.0011654109998744389, - "src/backend/tests/unit/graph/graph/test_utils.py::test_filter_vertices_from_vertex": 0.0010588689999622147, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_exact_sequence": 0.001135814000008395, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_simple": 0.0010764550002022588, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_complex_cycle": 0.0011387389999981679, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_cycle": 0.0010638290000315465, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_stop": 0.001071444999979576, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_stop_at_chroma": 0.00114339799984009, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_unconnected_graph": 0.0010985040000832669, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_successors_a": 0.0010708429997521307, - "src/backend/tests/unit/graph/graph/test_utils.py::test_get_successors_z": 0.0010727969997788023, - "src/backend/tests/unit/graph/graph/test_utils.py::test_has_cycle": 0.0010557839996181428, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_a": 0.0011098859997673571, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_g": 0.0010479309999027464, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_h": 0.0010858899997856497, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_invalid_vertex": 0.001186557999744764, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_m": 0.0010558240001046215, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_n_is_start": 0.0011315869999179995, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_t": 0.0011278089998540963, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_x": 0.0011227889997371676, - "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_z": 0.0010730670001066756, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_set_with_valid_component": 0.0002569809998931305, + "src/backend/tests/unit/graph/graph/test_base.py::test_graph_with_edge": 0.015141580999852522, + "src/backend/tests/unit/graph/graph/test_callback_graph.py::test_callback_graph": 0.0002427440001611103, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_conditional_router_max_iterations": 0.025317795999853843, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_cycle_in_graph": 0.00025610000011511147, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_cycle_in_graph_max_iterations": 0.022015940999835948, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_that_outputs_cache_is_set_to_false_in_cycle": 0.020272416999887355, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_updated_graph_with_max_iterations": 0.00024155300002348667, + "src/backend/tests/unit/graph/graph/test_cycles.py::test_updated_graph_with_prompts": 0.000267762000021321, + "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_functional_start_graph_state_update": 0.022413551999989068, + "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model": 0.0462872549999247, + "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model_json_schema": 0.00026243199999953504, + "src/backend/tests/unit/graph/graph/test_graph_state_model.py::test_graph_state_model_serialization": 0.02658070900019993, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_add_to_vertices_being_run": 0.0011116520001905883, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_are_all_predecessors_fulfilled": 0.0010896310002408427, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_are_all_predecessors_fulfilled__wrong": 0.0010557159998825227, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_build_run_map": 0.0010831369997958973, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict": 0.001091584000050716, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_run_map__bad_case": 0.0011146760000428912, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_run_predecessors__bad_case": 0.001169989999880272, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_vertices_being_run__bad_case": 0.0011239039999964007, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_from_dict_without_vertices_to_run__bad_case": 0.0010964119996970112, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable": 0.0010689010002806754, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_is_active": 0.001068179999720087, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_run_predecessors": 0.0010788300000967865, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_is_vertex_runnable__wrong_vertices_to_run": 0.001084440000113318, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_pickle": 0.0011292949998278345, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_remove_from_predecessors": 0.001095110000051136, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_remove_vertex_from_runnables": 0.0010940479999135277, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_to_dict": 0.0011586089999582327, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_run_state": 0.0010973139999350678, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_vertex_run_state": 0.0011110509997251938, + "src/backend/tests/unit/graph/graph/test_runnable_vertices_manager.py::test_update_vertex_run_state__bad_case": 0.0015499730000101408, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_detects_cycles_in_simple_graph": 0.0011282739997113822, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_disconnected_components": 0.0011198859999694832, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_duplicate_edges": 0.0011207580000700545, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_identifies_multiple_cycles": 0.0011285340001450095, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_large_graphs_efficiency": 0.0017804550000164454, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_mixed_data_types_in_edges": 0.0011509250000472093, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_multiple_edges_between_same_nodes": 0.001138541999807785, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_no_cycles_present": 0.0011005709998244129, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_nodes_with_no_incoming_edges": 0.001137740000103804, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_nodes_with_no_outgoing_edges": 0.0011157189999266848, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_self_loops": 0.0011125619996619207, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindAllCycleEdges::test_single_node_no_edges": 0.0010908619999554503, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_detects_cycle_in_simple_graph": 0.001128372000039235, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_disconnected_components": 0.0011505729999043979, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_duplicate_edges": 0.0011404839999613614, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_empty_edges_list": 0.001111241999979029, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_identifies_first_cycle": 0.0011235040003612085, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_large_graph_efficiency": 0.0011401350000141974, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_multiple_cycles": 0.001095701999929588, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_multiple_edges_between_same_nodes": 0.0011033260000203882, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_nodes_with_no_outgoing_edges": 0.0011070930004279944, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_returns_none_when_no_cycle": 0.0011143460001221683, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_self_loop_cycle": 0.001106390999893847, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleEdge::test_single_node_no_edges": 0.0011167310001383157, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_correctly_identify_and_return_vertices_in_single_cycle": 0.0011986540000634704, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_detect_cycles_simple_graph": 0.0011923130002742255, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_duplicate_edges_fixed_fixed": 0.001185900999871592, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_empty_edges": 0.0011412169999402977, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_large_graphs_efficiently": 0.0011894169997503923, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_no_outgoing_edges": 0.0011737170000287733, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_self_loops": 0.001187314000162587, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_single_cycle": 0.0011452440000994102, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[0]": 0.0012355329999991227, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[1]": 0.0011970110001584544, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[2]": 0.001204314999995404, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[3]": 0.0012310450001677964, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_handle_two_inputs_in_cycle[4]": 0.0011912600000414386, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_no_cycles_empty_list": 0.0011671350000597158, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_no_modification_of_input_edges_list": 0.0012821309999253572, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_non_string_vertex_ids": 0.0011705309998433222, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_process_disconnected_components": 0.0011819429998922715, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_return_vertices_involved_in_multiple_cycles": 0.0011741889998120314, + "src/backend/tests/unit/graph/graph/test_utils.py::TestFindCycleVertices::test_single_vertex_no_edges": 0.0011263189999226597, + "src/backend/tests/unit/graph/graph/test_utils.py::test_chat_inputs_at_start": 0.0012171799999123323, + "src/backend/tests/unit/graph/graph/test_utils.py::test_filter_vertices_from_vertex": 0.0011364670001512422, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_exact_sequence": 0.0012740550000671647, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_simple": 0.0011708609999914188, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_complex_cycle": 0.0011803499999132328, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_cycle": 0.001122633000022688, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_stop": 0.001127251000070828, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_stop_at_chroma": 0.001201418999926318, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_sorted_vertices_with_unconnected_graph": 0.0011484500000733533, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_successors_a": 0.0011019119999673421, + "src/backend/tests/unit/graph/graph/test_utils.py::test_get_successors_z": 0.0010868040001241752, + "src/backend/tests/unit/graph/graph/test_utils.py::test_has_cycle": 0.001120656999773928, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_a": 0.0011302880000130244, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_g": 0.0011074429999098356, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_h": 0.0010997200001838792, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_invalid_vertex": 0.0012560119998852315, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_m": 0.0011094569999841042, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_n_is_start": 0.0011610040000959998, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_t": 0.0010801330001868337, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_x": 0.0011165099997469952, + "src/backend/tests/unit/graph/graph/test_utils.py::test_sort_up_to_vertex_z": 0.001075935000244499, "src/backend/tests/unit/graph/test_graph.py::test_build_edges": 0.001086625037714839, "src/backend/tests/unit/graph/test_graph.py::test_build_nodes": 0.0012113330303691328, "src/backend/tests/unit/graph/test_graph.py::test_build_params": 0.00745550001738593, "src/backend/tests/unit/graph/test_graph.py::test_circular_dependencies": 0.0011518750106915832, - "src/backend/tests/unit/graph/test_graph.py::test_find_last_node": 0.0014249249998101732, + "src/backend/tests/unit/graph/test_graph.py::test_find_last_node": 0.0014466889999766863, "src/backend/tests/unit/graph/test_graph.py::test_get_node": 3.6276886249543168, "src/backend/tests/unit/graph/test_graph.py::test_get_node_neighbors_basic": 0.0015942919999361038, "src/backend/tests/unit/graph/test_graph.py::test_get_root_vertex": 0.00336533400695771, "src/backend/tests/unit/graph/test_graph.py::test_get_vertices_with_target": 0.0015001240535639226, "src/backend/tests/unit/graph/test_graph.py::test_graph_structure": 3.660518125980161, - "src/backend/tests/unit/graph/test_graph.py::test_invalid_node_types": 0.0015238500000123167, + "src/backend/tests/unit/graph/test_graph.py::test_invalid_node_types": 0.0015118300000267482, "src/backend/tests/unit/graph/test_graph.py::test_matched_type": 0.0011828330461867154, "src/backend/tests/unit/graph/test_graph.py::test_pickle_graph": 0.025576499931048602, - "src/backend/tests/unit/graph/test_graph.py::test_process_flow": 0.002210936000210495, - "src/backend/tests/unit/graph/test_graph.py::test_process_flow_one_group": 0.002723474000049464, - "src/backend/tests/unit/graph/test_graph.py::test_process_flow_vector_store_grouped": 0.004098625999858996, - "src/backend/tests/unit/graph/test_graph.py::test_serialize_graph": 0.12700244499978908, - "src/backend/tests/unit/graph/test_graph.py::test_set_new_target_handle": 0.0010381820000020525, - "src/backend/tests/unit/graph/test_graph.py::test_ungroup_node": 0.0020856999999523396, - "src/backend/tests/unit/graph/test_graph.py::test_update_source_handle": 0.0010411069999918254, - "src/backend/tests/unit/graph/test_graph.py::test_update_target_handle_proxy": 0.0010451549999288545, - "src/backend/tests/unit/graph/test_graph.py::test_update_template": 0.0012154640003245731, + "src/backend/tests/unit/graph/test_graph.py::test_process_flow": 0.0022652710001693777, + "src/backend/tests/unit/graph/test_graph.py::test_process_flow_one_group": 0.002761190000001079, + "src/backend/tests/unit/graph/test_graph.py::test_process_flow_vector_store_grouped": 0.004326251000065895, + "src/backend/tests/unit/graph/test_graph.py::test_serialize_graph": 0.13733036900021034, + "src/backend/tests/unit/graph/test_graph.py::test_set_new_target_handle": 0.0011244639997585182, + "src/backend/tests/unit/graph/test_graph.py::test_ungroup_node": 0.0021182169998610334, + "src/backend/tests/unit/graph/test_graph.py::test_update_source_handle": 0.001253256000154579, + "src/backend/tests/unit/graph/test_graph.py::test_update_target_handle_proxy": 0.0011338319998230872, + "src/backend/tests/unit/graph/test_graph.py::test_update_template": 0.001236225999718954, "src/backend/tests/unit/graph/test_graph.py::test_validate_edges": 0.0010510420543141663, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_correctly_accesses_descriptions_recommended_fix": 0.001922655999806011, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_create_model_from_valid_schema": 0.0021749079999153764, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handle_empty_schema": 0.0013533420001294871, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handle_large_schemas_efficiently": 0.0021052380000128323, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handles_multiple_fields_fixed_with_instance_check": 0.0020036889998209517, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_manages_unknown_field_types": 0.001315140000087922, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_nested_list_and_dict_types_handling": 0.001881158999822219, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_no_duplicate_field_names_fixed_fixed": 0.0017044879998593387, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_process_schema_missing_optional_keys_updated": 0.0021701400000893045, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_raises_error_for_invalid_input_different_exception_with_specific_exception": 0.0012564089997795236, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_returns_valid_model_class": 0.0017242949998035328, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_schema_fields_with_none_default": 0.0019065159999627213, - "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_supports_single_and_multiple_type_annotations": 0.0018358840000018972, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list[{name} is {age} years old-data0-expected0]": 0.0012980389999484032, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list[{name} is {age} years old-data1-expected1]": 0.0013064029997167381, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__data_contains_nested_data_key": 0.0011257450003085978, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__data_with_data_attribute_empty": 0.0011301639997327584, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_empty": 0.0011532580001585302, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_without_placeholder": 0.0011705200001870253, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_without_placeholder_and_data_attribute_empty": 0.0011231310002131067, - "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_wrong_placeholder": 0.0011294629998701566, - "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot": 5.5350219230001585, - "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot_dump_components_and_edges": 0.029022426999972595, - "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot_dump_structure": 0.033073332999947525, - "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag": 0.1892015480000282, - "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_add": 0.14085212099985256, - "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_dump": 0.0797869699997591, - "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_dump_components_and_edges": 0.07675684099990576, - "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_concurrent_calls": 5.431742019999774, - "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_creation": 5.590829337000059, - "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_idempotency": 5.5693302240001685, - "src/backend/tests/unit/inputs/test_inputs.py::test_bool_input_invalid": 0.0010481389997494261, - "src/backend/tests/unit/inputs/test_inputs.py::test_bool_input_valid": 0.0010599119998460083, - "src/backend/tests/unit/inputs/test_inputs.py::test_code_input_valid": 0.0010459239995270764, - "src/backend/tests/unit/inputs/test_inputs.py::test_data_input_valid": 0.0010453830002461473, - "src/backend/tests/unit/inputs/test_inputs.py::test_dict_input_invalid": 0.0010348749999593565, - "src/backend/tests/unit/inputs/test_inputs.py::test_dict_input_valid": 0.0010471069999766769, - "src/backend/tests/unit/inputs/test_inputs.py::test_dropdown_input_invalid": 0.0010776249998798448, - "src/backend/tests/unit/inputs/test_inputs.py::test_dropdown_input_valid": 0.0010496509999029513, - "src/backend/tests/unit/inputs/test_inputs.py::test_file_input_valid": 0.0010501930000827997, - "src/backend/tests/unit/inputs/test_inputs.py::test_float_input_invalid": 0.0010609329999624606, - "src/backend/tests/unit/inputs/test_inputs.py::test_float_input_valid": 0.0010533090000990342, - "src/backend/tests/unit/inputs/test_inputs.py::test_handle_input_invalid": 0.0010986320000938576, - "src/backend/tests/unit/inputs/test_inputs.py::test_handle_input_valid": 0.0010530990000461316, - "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_comprehensive": 0.0011304219997327891, - "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_invalid": 0.0011812289999397763, - "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_valid": 0.0010754090001228178, - "src/backend/tests/unit/inputs/test_inputs.py::test_int_input_invalid": 0.0010506030000669853, - "src/backend/tests/unit/inputs/test_inputs.py::test_int_input_valid": 0.0011540949999471195, - "src/backend/tests/unit/inputs/test_inputs.py::test_message_text_input_invalid": 0.001130303999843818, - "src/backend/tests/unit/inputs/test_inputs.py::test_message_text_input_valid": 0.001172681999833003, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_input_invalid": 0.0012421310000263475, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_input_valid": 0.001085398999748577, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_secret_input_invalid": 0.0011781819996485865, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_secret_input_valid": 0.0011433480001414864, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiselect_input_invalid": 0.001105928000242784, - "src/backend/tests/unit/inputs/test_inputs.py::test_multiselect_input_valid": 0.001055072999861295, - "src/backend/tests/unit/inputs/test_inputs.py::test_nested_dict_input_invalid": 0.0010575270000572345, - "src/backend/tests/unit/inputs/test_inputs.py::test_nested_dict_input_valid": 0.0010670229999050207, - "src/backend/tests/unit/inputs/test_inputs.py::test_prompt_input_valid": 0.001085138000007646, - "src/backend/tests/unit/inputs/test_inputs.py::test_secret_str_input_invalid": 0.00117398499992305, - "src/backend/tests/unit/inputs/test_inputs.py::test_secret_str_input_valid": 0.0011733239996374323, - "src/backend/tests/unit/inputs/test_inputs.py::test_slider_input_valid": 0.0011380160001408512, - "src/backend/tests/unit/inputs/test_inputs.py::test_str_input_invalid": 0.0011123879999104247, - "src/backend/tests/unit/inputs/test_inputs.py::test_str_input_valid": 0.0010839750002560322, - "src/backend/tests/unit/inputs/test_inputs.py::test_table_input_invalid": 0.0011269550000179152, - "src/backend/tests/unit/inputs/test_inputs.py::test_table_input_valid": 0.001566236999906323, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_complex_nested_structures_handling": 0.0015726999999969848, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_default_values_assignment": 0.0015019679997294588, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_default_values_for_non_required_fields": 0.0014891430000716355, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_empty_list_of_inputs": 0.0013409359999059234, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_field_types_conversion": 0.0015221250000649889, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_fields_creation_with_correct_types_and_attributes": 0.001515219999873807, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_correctly_accesses_descriptions_recommended_fix": 0.0019229590002396435, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_create_model_from_valid_schema": 0.002205940000294504, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handle_empty_schema": 0.0013764259997515182, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handle_large_schemas_efficiently": 0.0019668319998800143, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_handles_multiple_fields_fixed_with_instance_check": 0.0019667130002289923, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_manages_unknown_field_types": 0.001202309999598583, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_nested_list_and_dict_types_handling": 0.0017792220003229886, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_no_duplicate_field_names_fixed_fixed": 0.0015740069998173567, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_process_schema_missing_optional_keys_updated": 0.0020391370001107134, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_raises_error_for_invalid_input_different_exception_with_specific_exception": 0.0010744609999164823, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_returns_valid_model_class": 0.0016330970001945389, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_schema_fields_with_none_default": 0.001756788999955461, + "src/backend/tests/unit/helpers/test_base_model_from_schema.py::TestBuildModelFromSchema::test_supports_single_and_multiple_type_annotations": 0.0017777989999103738, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list[{name} is {age} years old-data0-expected0]": 0.0011576780000268627, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list[{name} is {age} years old-data1-expected1]": 0.00113881099991886, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__data_contains_nested_data_key": 0.001360957999850143, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__data_with_data_attribute_empty": 0.0010208310000052734, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_empty": 0.0010372020001341298, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_without_placeholder": 0.0010383940000338043, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_without_placeholder_and_data_attribute_empty": 0.0010333839998111216, + "src/backend/tests/unit/helpers/test_data.py::test_data_to_text_list__template_wrong_placeholder": 0.0010469490000559745, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_complex_nested_data": 0.0010299490002125822, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_empty_data_dict": 0.0010548650000146154, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_empty_template": 0.001018445999989126, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_invalid_template_type": 0.001109366000036971, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_missing_key": 0.001024447999725453, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_mixed_data_types": 0.0010440050000397605, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_none_data": 0.00116564300014943, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_none_template": 0.0011126930000955326, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[Error: {text}-data4-expected_text4]": 0.0011239339999065123, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[Text: {text}-data0-expected_text0]": 0.0011615250000431843, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[User: {text}-data3-expected_text3]": 0.00111072000004242, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[Value: {text}-data5-expected_text5]": 0.0011246159999700467, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[{name} is {age} years old-data1-expected_text1]": 0.0012425959996562597, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_parametrized[{name} is {age} years old-data2-expected_text2]": 0.0011382519999187934, + "src/backend/tests/unit/helpers/test_data_to_text_list.py::test_data_to_text_list_string_data": 0.0010612369999307703, + "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot": 5.339420844000188, + "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot_dump_components_and_edges": 0.029168764999894847, + "src/backend/tests/unit/initial_setup/starter_projects/test_memory_chatbot.py::test_memory_chatbot_dump_structure": 0.033715747000087504, + "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag": 0.18751460199996473, + "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_add": 0.14032314300038706, + "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_dump": 0.07448896100004276, + "src/backend/tests/unit/initial_setup/starter_projects/test_vector_store_rag.py::test_vector_store_rag_dump_components_and_edges": 0.07815865900010976, + "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_concurrent_calls": 5.349639158999935, + "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_creation": 7.199647383999945, + "src/backend/tests/unit/initial_setup/test_setup_functions.py::test_get_or_create_default_folder_idempotency": 5.275600282000141, + "src/backend/tests/unit/inputs/test_inputs.py::test_bool_input_invalid": 0.0011542699999154138, + "src/backend/tests/unit/inputs/test_inputs.py::test_bool_input_valid": 0.0011717639999915264, + "src/backend/tests/unit/inputs/test_inputs.py::test_code_input_valid": 0.0011329199999181583, + "src/backend/tests/unit/inputs/test_inputs.py::test_data_input_valid": 0.0011194960000011633, + "src/backend/tests/unit/inputs/test_inputs.py::test_dict_input_invalid": 0.0010749820000910404, + "src/backend/tests/unit/inputs/test_inputs.py::test_dict_input_valid": 0.001099990000057005, + "src/backend/tests/unit/inputs/test_inputs.py::test_dropdown_input_invalid": 0.0010679389999950217, + "src/backend/tests/unit/inputs/test_inputs.py::test_dropdown_input_valid": 0.0010979760002101102, + "src/backend/tests/unit/inputs/test_inputs.py::test_file_input_valid": 0.001100399999813817, + "src/backend/tests/unit/inputs/test_inputs.py::test_float_input_invalid": 0.0011369480000666954, + "src/backend/tests/unit/inputs/test_inputs.py::test_float_input_valid": 0.0011487990000205173, + "src/backend/tests/unit/inputs/test_inputs.py::test_handle_input_invalid": 0.0011531990001003578, + "src/backend/tests/unit/inputs/test_inputs.py::test_handle_input_valid": 0.0011293449999811855, + "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_comprehensive": 0.0011128329999792186, + "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_invalid": 0.001226827000209596, + "src/backend/tests/unit/inputs/test_inputs.py::test_instantiate_input_valid": 0.001179668999839123, + "src/backend/tests/unit/inputs/test_inputs.py::test_int_input_invalid": 0.0011207980003291595, + "src/backend/tests/unit/inputs/test_inputs.py::test_int_input_valid": 0.0011488899997402768, + "src/backend/tests/unit/inputs/test_inputs.py::test_message_text_input_invalid": 0.0012230810000346537, + "src/backend/tests/unit/inputs/test_inputs.py::test_message_text_input_valid": 0.0012453510003069823, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_input_invalid": 0.0011711509998804104, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_input_valid": 0.0011465669999779493, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_secret_input_invalid": 0.001159519999873737, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiline_secret_input_valid": 0.0011476180000045133, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiselect_input_invalid": 0.0010517590001200006, + "src/backend/tests/unit/inputs/test_inputs.py::test_multiselect_input_valid": 0.00107776699974238, + "src/backend/tests/unit/inputs/test_inputs.py::test_nested_dict_input_invalid": 0.0011968880000949866, + "src/backend/tests/unit/inputs/test_inputs.py::test_nested_dict_input_valid": 0.0011155590000271332, + "src/backend/tests/unit/inputs/test_inputs.py::test_prompt_input_valid": 0.0011777950001032877, + "src/backend/tests/unit/inputs/test_inputs.py::test_secret_str_input_invalid": 0.0011481290000574518, + "src/backend/tests/unit/inputs/test_inputs.py::test_secret_str_input_valid": 0.0011316590000660653, + "src/backend/tests/unit/inputs/test_inputs.py::test_slider_input_valid": 0.0012073709999640414, + "src/backend/tests/unit/inputs/test_inputs.py::test_str_input_invalid": 0.0012298429999191285, + "src/backend/tests/unit/inputs/test_inputs.py::test_str_input_valid": 0.00116190399990046, + "src/backend/tests/unit/inputs/test_inputs.py::test_table_input_invalid": 0.0012239420000241807, + "src/backend/tests/unit/inputs/test_inputs.py::test_table_input_valid": 0.0015460629999779485, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_complex_nested_structures_handling": 0.0018915410003046418, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_default_values_assignment": 0.0014845499999864842, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_default_values_for_non_required_fields": 0.0015482590001738572, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_empty_list_of_inputs": 0.00133437799991043, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_field_types_conversion": 0.001554169000201, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_fields_creation_with_correct_types_and_attributes": 0.0015316270000766963, "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_invalid_field_types_handling": 0.0005195839912630618, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_is_list_attribute_processing": 0.001591506000067966, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_is_list_handling": 0.0016084459998637612, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_missing_attributes_handling": 0.001493130999733694, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_missing_optional_attributes": 0.0015215129999432975, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_mixed_required_optional_fields_processing": 0.001639605000264055, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_multiple_input_types": 0.0016833779998250975, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_non_standard_field_types_handling": 0.0015060759999414586, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_none_default_value_handling": 0.0015013059999091638, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_options_attribute_processing": 0.0023833440000089468, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_options_handling": 0.0015800840001247707, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_passing_input_type_directly": 0.001084166999817171, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_schema_model_creation": 0.0015046619998884125, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_single_input_type_conversion": 0.0015483849997508514, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_single_input_type_replica": 0.0015071080001689552, - "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_special_characters_in_names_handling": 0.0015062959998886072, - "src/backend/tests/unit/io/test_io_schema.py::test_create_input_schema": 0.002932712000074389, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_column_with_valid_formatter": 0.0010708910001540062, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_column_without_display_name": 0.0011076810001213744, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_with_type_instead_of_formatter": 0.0010416869999971823, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_default_sortable_filterable": 0.0010641000001214707, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_description_and_default": 0.0010920819997863873, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_explicitly_set_to_enum": 0.001065280999910101, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_none_when_not_provided": 0.0010504129998025746, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_set_based_on_value": 0.0010689179998735199, - "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_invalid_formatter_raises_value_error": 0.0012303510000037932, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_allow_markdown_override": 0.001113000000032116, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_initialize_with_empty_contents": 0.0010734560000855708, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_initialize_with_valid_title_and_contents": 0.0013140850001036597, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_invalid_contents_type": 0.0011631150000539492, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_media_url_handling": 0.0010688780000691622, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_serialize_contents": 0.0011734630004411883, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_single_content_conversion": 0.0010526470000513655, - "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_validate_different_content_types": 0.0011183899998741254, - "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_serialization": 0.0011239909999858355, - "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_with_duration": 0.00105207599995083, - "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_with_header": 0.0010467059998973127, - "src/backend/tests/unit/schema/test_content_types.py::TestCodeContent::test_code_content_creation": 0.0010855680000076973, - "src/backend/tests/unit/schema/test_content_types.py::TestCodeContent::test_code_content_without_title": 0.0010529070000302454, - "src/backend/tests/unit/schema/test_content_types.py::TestErrorContent::test_error_content_creation": 0.0010421679999126354, - "src/backend/tests/unit/schema/test_content_types.py::TestErrorContent::test_error_content_optional_fields": 0.0010568359996341314, - "src/backend/tests/unit/schema/test_content_types.py::TestJSONContent::test_json_content_complex_data": 0.0010655809999207122, - "src/backend/tests/unit/schema/test_content_types.py::TestJSONContent::test_json_content_creation": 0.0010894760000610404, - "src/backend/tests/unit/schema/test_content_types.py::TestMediaContent::test_media_content_creation": 0.0010867720000078407, - "src/backend/tests/unit/schema/test_content_types.py::TestMediaContent::test_media_content_without_caption": 0.0010475379999661527, - "src/backend/tests/unit/schema/test_content_types.py::TestTextContent::test_text_content_creation": 0.001090078000061112, - "src/backend/tests/unit/schema/test_content_types.py::TestTextContent::test_text_content_with_duration": 0.0010566950002157682, - "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_creation": 0.0010862310000447906, - "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_minimal": 0.0010732370001278468, - "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_with_error": 0.001059069000348245, - "src/backend/tests/unit/schema/test_content_types.py::test_content_type_discrimination": 0.0014244230001168035, - "src/backend/tests/unit/schema/test_image.py::test_get_file_paths": 0.0060736430000361, - "src/backend/tests/unit/schema/test_image.py::test_get_file_paths__empty": 0.0011826909999399504, - "src/backend/tests/unit/schema/test_image.py::test_get_files": 0.00959503399985806, - "src/backend/tests/unit/schema/test_image.py::test_get_files__convert_to_base64": 0.009083257999918715, - "src/backend/tests/unit/schema/test_image.py::test_get_files__empty": 0.001556680000248889, - "src/backend/tests/unit/schema/test_image.py::test_is_image_file": 0.0018917970000984496, - "src/backend/tests/unit/schema/test_image.py::test_is_image_file__not_image": 0.0014738140000645217, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_ai_response": 0.001154858999825592, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_invalid_image_path": 0.001561327999979767, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_missing_required_keys": 0.0011558500000319327, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_image": 0.0017696779996185796, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_multiple_images": 0.002013592999901448, - "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_text_only": 0.0011288299999705487, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_row_with_data_object": 0.002777069999865489, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_row_with_dict": 0.002810001999932865, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_mixed_types": 0.002697441000236722, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_with_data_objects": 0.0026889070002198423, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_with_dicts": 0.00272225900016565, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_pandas_operations": 0.0035924350002005667, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_type_preservation": 0.0022491140000511223, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_with_null_values": 0.002013794000276903, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_basic": 0.001962699999921824, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_empty": 0.001538266000125077, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_missing_fields": 0.001811726000141789, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_nested_data": 0.001586635000194292, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_data_objects": 0.0016659430002619047, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_dict_of_lists": 0.0015997599998627265, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_dicts": 0.001660853000203133, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_invalid_list": 0.001413934000311201, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_kwargs": 0.0017186919999403472, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_none": 0.001256368000213115, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_pandas_dataframe": 0.0016050990000167076, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_basic": 0.0022184469999046996, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_empty": 0.001453006000019741, - "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_modified_data": 0.0026323899999169953, - "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_add_row": 0.0030819409998912306, - "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_add_rows": 0.00277346400002898, - "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_bool_operator": 0.001611132999869369, - "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_to_data_list": 0.001897177000046213, - "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_to_lc_documents": 0.0018714079997153021, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_is_list_attribute_processing": 0.0022534389997872495, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_is_list_handling": 0.0019068209999204555, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_missing_attributes_handling": 0.0014922430000297027, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_missing_optional_attributes": 0.0015072799997142283, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_mixed_required_optional_fields_processing": 0.0019651490001706406, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_multiple_input_types": 0.001651923000054012, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_non_standard_field_types_handling": 0.0017330149998997513, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_none_default_value_handling": 0.001510558000063611, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_options_attribute_processing": 0.0016723309997814795, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_options_handling": 0.0016786329997557914, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_passing_input_type_directly": 0.0012087229999906413, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_schema_model_creation": 0.001484338999944157, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_single_input_type_conversion": 0.0015414960000725841, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_single_input_type_replica": 0.0016832409999096853, + "src/backend/tests/unit/io/test_io_schema.py::TestCreateInputSchema::test_special_characters_in_names_handling": 0.001507724000248345, + "src/backend/tests/unit/io/test_io_schema.py::test_create_input_schema": 0.0028984960001707805, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_column_with_valid_formatter": 0.0011252360000071349, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_column_without_display_name": 0.0011022239998510486, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_create_with_type_instead_of_formatter": 0.0010846800000763324, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_default_sortable_filterable": 0.0011741180001081375, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_description_and_default": 0.001084519999949407, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_explicitly_set_to_enum": 0.0010991399999511486, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_none_when_not_provided": 0.0011101889999736159, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_formatter_set_based_on_value": 0.0010849619998225535, + "src/backend/tests/unit/io/test_table_schema.py::TestColumn::test_invalid_formatter_raises_value_error": 0.00121436499966876, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_allow_markdown_override": 0.0011050489999888669, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_initialize_with_empty_contents": 0.0010718660003021796, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_initialize_with_valid_title_and_contents": 0.0013319140000476182, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_invalid_contents_type": 0.00117109300026641, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_media_url_handling": 0.0010747319997790328, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_serialize_contents": 0.001208193000366009, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_single_content_conversion": 0.0011206980000224576, + "src/backend/tests/unit/schema/test_content_block.py::TestContentBlock::test_validate_different_content_types": 0.0011618050002653035, + "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_serialization": 0.0011227320001125918, + "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_with_duration": 0.0010833989997536264, + "src/backend/tests/unit/schema/test_content_types.py::TestBaseContent::test_base_content_with_header": 0.0010791100003189058, + "src/backend/tests/unit/schema/test_content_types.py::TestCodeContent::test_code_content_creation": 0.0010849209998013976, + "src/backend/tests/unit/schema/test_content_types.py::TestCodeContent::test_code_content_without_title": 0.0010387939998963702, + "src/backend/tests/unit/schema/test_content_types.py::TestErrorContent::test_error_content_creation": 0.0010801430000810797, + "src/backend/tests/unit/schema/test_content_types.py::TestErrorContent::test_error_content_optional_fields": 0.0014549439997608715, + "src/backend/tests/unit/schema/test_content_types.py::TestJSONContent::test_json_content_complex_data": 0.0010734590000538446, + "src/backend/tests/unit/schema/test_content_types.py::TestJSONContent::test_json_content_creation": 0.0010820049999438197, + "src/backend/tests/unit/schema/test_content_types.py::TestMediaContent::test_media_content_creation": 0.0010658559999683348, + "src/backend/tests/unit/schema/test_content_types.py::TestMediaContent::test_media_content_without_caption": 0.0010663460002433567, + "src/backend/tests/unit/schema/test_content_types.py::TestTextContent::test_text_content_creation": 0.0010711869999795454, + "src/backend/tests/unit/schema/test_content_types.py::TestTextContent::test_text_content_with_duration": 0.0010769159998744726, + "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_creation": 0.0010831480001343152, + "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_minimal": 0.0011091559999840683, + "src/backend/tests/unit/schema/test_content_types.py::TestToolContent::test_tool_content_with_error": 0.0010647839997091069, + "src/backend/tests/unit/schema/test_content_types.py::test_content_type_discrimination": 0.0010713959998156497, + "src/backend/tests/unit/schema/test_image.py::test_get_file_paths": 0.006127471999889167, + "src/backend/tests/unit/schema/test_image.py::test_get_file_paths__empty": 0.0012439989998256351, + "src/backend/tests/unit/schema/test_image.py::test_get_files": 0.009764581999888833, + "src/backend/tests/unit/schema/test_image.py::test_get_files__convert_to_base64": 0.009893271999999342, + "src/backend/tests/unit/schema/test_image.py::test_get_files__empty": 0.0016124679996210034, + "src/backend/tests/unit/schema/test_image.py::test_is_image_file": 0.001941734999718392, + "src/backend/tests/unit/schema/test_image.py::test_is_image_file__not_image": 0.0015157689997522539, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_ai_response": 0.0011749699997380958, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_invalid_image_path": 0.0016630330001135007, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_missing_required_keys": 0.001255620999927487, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_image": 0.0018445639998390106, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_multiple_images": 0.0019457319999673928, + "src/backend/tests/unit/schema/test_schema_data.py::TestDataSchema::test_data_to_message_with_text_only": 0.0011892870004430733, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_row_with_data_object": 0.0028384749998622283, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_row_with_dict": 0.002910367999902519, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_mixed_types": 0.002745289000131379, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_with_data_objects": 0.002724670999668888, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_add_rows_with_dicts": 0.002736483000262524, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_pandas_operations": 0.003666263999775765, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_type_preservation": 0.0023234999998749117, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_dataset_with_null_values": 0.0020579639995048638, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_basic": 0.0020225959999606857, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_empty": 0.0016662799996538524, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_missing_fields": 0.0018720649998158478, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_from_data_list_nested_data": 0.0016308140000091953, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_data_objects": 0.001726983000025939, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_dict_of_lists": 0.0016498190000220347, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_dicts": 0.001679275000014968, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_invalid_list": 0.0014489030002096115, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_kwargs": 0.0017750230001638556, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_none": 0.0013183889998344966, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_init_with_pandas_dataframe": 0.0016968380002708727, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_basic": 0.002204577999918911, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_empty": 0.001449955999987651, + "src/backend/tests/unit/schema/test_schema_data_set.py::test_to_data_list_modified_data": 0.002647174999538038, + "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_add_row": 0.0031332759999713744, + "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_add_rows": 0.00280334900003254, + "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_bool_operator": 0.0016827709998779028, + "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_to_data_list": 0.0019503529999838065, + "src/backend/tests/unit/schema/test_schema_dataframe.py::TestDataFrameSchema::test_to_lc_documents": 0.0019102760002169816, "src/backend/tests/unit/schema/test_schema_message.py::test_message_async_prompt_serialization": 0.00209424999775365, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_from_ai_text": 0.0012307999998029118, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_from_human_text": 0.0012010959999315673, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_prompt_serialization": 0.0052316189999146445, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_serialization": 0.0012964229997578514, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_to_lc_without_sender": 0.001215460999901552, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_invalid_image_path": 0.0014155960002426582, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_multiple_images": 0.003092209000215007, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_single_image": 0.002626399000064339, - "src/backend/tests/unit/schema/test_schema_message.py::test_message_without_sender": 0.0012005139997199876, - "src/backend/tests/unit/schema/test_schema_message.py::test_timestamp_serialization": 0.00191023099978338, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_async_iterator_handling": 0.001128509999716698, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_builtin_type_serialization": 0.0011358629999449477, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_bytes_serialization": 0.06130238600007942, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_class_serialization": 0.009718316000089544, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_custom_type_serialization": 0.0011649880000277335, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_datetime_serialization": 0.07069100499984415, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_decimal_serialization": 0.07761803200014583, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_dict_serialization": 0.2270946430001004, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_document_serialization": 0.0013478099997428217, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_enum_serialization": 0.0013319909999154333, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_fallback_serialization": 0.00358265599970764, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_generic_type_serialization": 0.00128489200005788, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_instance_serialization": 0.0012315330002365954, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_list_truncation": 0.19023289399979149, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_max_items_none": 0.16719939699987663, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_max_length_none": 0.06484085900001446, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_nested_class_serialization": 0.008022385999765902, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_nested_structures": 0.43112734700002875, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_none_serialization": 0.0011711689999174268, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_numpy_int64_serialization": 0.0012162129999069293, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_numpy_numeric_serialization": 0.0013384020003286423, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pandas_serialization": 0.006699953999941499, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_primitive_types": 0.07458922199998597, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_class_serialization": 0.0011711299998751201, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_modern_model": 0.06111058700003014, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_v1_model": 0.06074488400008704, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_series_serialization": 0.0012793919997875491, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_series_truncation": 0.002057655000271552, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_string_serialization": 0.07386518700013767, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_type_alias_serialization": 0.0011672220002765243, - "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_uuid_serialization": 0.06629639100015083, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_from_ai_text": 0.0012545380000119621, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_from_human_text": 0.0012851059998411074, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_prompt_serialization": 0.005241712000042753, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_serialization": 0.0013488160002452787, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_to_lc_without_sender": 0.0012590280000495113, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_invalid_image_path": 0.0015391519996228453, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_multiple_images": 0.0030637960001058673, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_with_single_image": 0.0026804180001818168, + "src/backend/tests/unit/schema/test_schema_message.py::test_message_without_sender": 0.0013028890000441606, + "src/backend/tests/unit/schema/test_schema_message.py::test_timestamp_serialization": 0.0019071199997142685, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_async_iterator_handling": 0.0012060189999374415, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_builtin_type_serialization": 0.001092105999987325, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_bytes_serialization": 0.06246855399990636, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_class_serialization": 0.009461363999889727, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_custom_type_serialization": 0.0011032859999886568, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_datetime_serialization": 0.07090165299996443, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_decimal_serialization": 0.08051200400018388, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_dict_serialization": 0.22763027200039687, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_document_serialization": 0.001235921999978018, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_enum_serialization": 0.0012901460002012755, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_fallback_serialization": 0.0034840539999549947, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_generic_type_serialization": 0.00121008700011771, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_instance_serialization": 0.0011738979999336152, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_list_truncation": 0.1980865589998757, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_max_items_none": 0.16562448499985294, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_max_length_none": 0.06580675899999733, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_nested_class_serialization": 0.007598336000000927, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_nested_structures": 0.47264199599976564, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_none_serialization": 0.0010954120000405965, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_numpy_int64_serialization": 0.001146647000041412, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_numpy_numeric_serialization": 0.0012912269999105774, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pandas_serialization": 0.006677441999954681, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_primitive_types": 0.0727096140001322, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_class_serialization": 0.0011381409999557945, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_modern_model": 0.061034583999799, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_pydantic_v1_model": 0.06121180599984655, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_series_serialization": 0.0013054850001026352, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_series_truncation": 0.0020524029998796323, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_string_serialization": 0.07308514099986496, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_type_alias_serialization": 0.0011483099999622937, + "src/backend/tests/unit/serialization/test_serialization.py::TestSerializationHypothesis::test_uuid_serialization": 0.06723971699966569, "src/backend/tests/unit/services/database/test_utils.py::test_truncate_json__large_case": 0.0013368430001037268, "src/backend/tests/unit/services/database/test_utils.py::test_truncate_json__small_case": 0.001604773000053683, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_concurrent_log_vertex_build": 0.1681470010000794, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_basic": 0.0907592140001725, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_integrity_error": 0.09165523000001485, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_max_global_limit": 8.77590172899977, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_max_per_vertex_limit": 0.08743914100023176, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_ordering": 0.09601061100011066, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[1-1]": 0.08310605699989537, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[100-50]": 0.5264148449998629, - "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[5-3]": 0.09857470300016757, - "src/backend/tests/unit/services/variable/test_service.py::test_create_variable": 0.0677297809997981, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_concurrent_log_vertex_build": 0.1550417869998455, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_basic": 0.09525221300009434, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_integrity_error": 0.08416004900004737, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_max_global_limit": 8.930781276000289, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_max_per_vertex_limit": 0.09051189300021178, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_ordering": 0.09276298800000404, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[1-1]": 0.09533983300002546, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[100-50]": 0.544973624000022, + "src/backend/tests/unit/services/database/test_vertex_builds.py::test_log_vertex_build_with_different_limits[5-3]": 0.09986040100011451, + "src/backend/tests/unit/services/variable/test_service.py::test_create_variable": 0.0682105469995804, "src/backend/tests/unit/services/variable/test_service.py::test_delete_varaible_by_id": 0.0060262500192038715, - "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable": 0.07216131900008804, + "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable": 0.0727556370000002, "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable__ValueError": 0.0035743750049732625, - "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable__valueerror": 0.06994449199987685, - "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable_by_id": 0.08002039500024694, + "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable__valueerror": 0.06739995799989629, + "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable_by_id": 0.07204814200008514, "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable_by_id__ValueError": 0.27340612601256, - "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable_by_id__valueerror": 0.08406246499998815, - "src/backend/tests/unit/services/variable/test_service.py::test_get_variable": 0.0676017719997617, + "src/backend/tests/unit/services/variable/test_service.py::test_delete_variable_by_id__valueerror": 0.07415377500001341, + "src/backend/tests/unit/services/variable/test_service.py::test_get_variable": 0.07670434600026965, "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__TypeError": 0.00458791694836691, "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__ValueError": 0.003811584028881043, - "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__typeerror": 0.06891191099975913, - "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__valueerror": 0.06644042799985073, - "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__create_and_update": 0.1540985199997067, + "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__typeerror": 0.08702992000030463, + "src/backend/tests/unit/services/variable/test_service.py::test_get_variable__valueerror": 0.0664956479997727, + "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__create_and_update": 0.14895946999968146, "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__donkey": 0.0002315010060556233, - "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__not_found_variable": 0.06883484799982398, - "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__skipping_environment_variable_storage": 0.0638966330002404, - "src/backend/tests/unit/services/variable/test_service.py::test_list_variables": 0.08307999699991342, - "src/backend/tests/unit/services/variable/test_service.py::test_list_variables__empty": 0.06570271000009598, - "src/backend/tests/unit/services/variable/test_service.py::test_update_variable": 0.07185668900001474, + "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__not_found_variable": 0.07653409799968358, + "src/backend/tests/unit/services/variable/test_service.py::test_initialize_user_variables__skipping_environment_variable_storage": 0.06728545500027394, + "src/backend/tests/unit/services/variable/test_service.py::test_list_variables": 0.09329549100016266, + "src/backend/tests/unit/services/variable/test_service.py::test_list_variables__empty": 0.06958614700010912, + "src/backend/tests/unit/services/variable/test_service.py::test_update_variable": 0.09154575399975329, "src/backend/tests/unit/services/variable/test_service.py::test_update_variable__ValueError": 0.0036237920285202563, - "src/backend/tests/unit/services/variable/test_service.py::test_update_variable__valueerror": 0.06660740299980716, - "src/backend/tests/unit/services/variable/test_service.py::test_update_variable_fields": 0.07047176899982333, - "src/backend/tests/unit/test_api_key.py::test_create_api_key": 5.965236204000121, - "src/backend/tests/unit/test_api_key.py::test_delete_api_key": 5.944991847999745, - "src/backend/tests/unit/test_api_key.py::test_get_api_keys": 5.920730129000049, + "src/backend/tests/unit/services/variable/test_service.py::test_update_variable__valueerror": 0.06735225800002809, + "src/backend/tests/unit/services/variable/test_service.py::test_update_variable_fields": 0.09049408000009862, + "src/backend/tests/unit/test_api_key.py::test_create_api_key": 5.825242084000138, + "src/backend/tests/unit/test_api_key.py::test_delete_api_key": 5.810140896999883, + "src/backend/tests/unit/test_api_key.py::test_get_api_keys": 5.894013070000028, "src/backend/tests/unit/test_cache.py::test_build_graph": 1.1988659180001378, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow": 2.5162149699999645, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_from_request_data": 4.456442602999914, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_invalid_flow_id": 2.4756415579997793, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_invalid_job_id": 2.44829581099998, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_polling": 2.5722390050000286, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_start_only": 4.348506870999927, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_start_with_inputs": 4.5751852430003055, - "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_with_frozen_path": 6.144164584999999, - "src/backend/tests/unit/test_cli.py::test_components_path": 0.22826985599999716, - "src/backend/tests/unit/test_cli.py::test_superuser": 4.882301994999807, - "src/backend/tests/unit/test_custom_component.py::test_build_config_field_keys": 0.0011795739999342914, - "src/backend/tests/unit/test_custom_component.py::test_build_config_field_value_keys": 0.0011376639999980398, - "src/backend/tests/unit/test_custom_component.py::test_build_config_field_values_dict": 0.0011395069998343388, - "src/backend/tests/unit/test_custom_component.py::test_build_config_fields_dict": 0.0011391779999030405, - "src/backend/tests/unit/test_custom_component.py::test_build_config_has_fields": 0.0011559700001271267, - "src/backend/tests/unit/test_custom_component.py::test_build_config_no_code": 0.0011149019999265875, - "src/backend/tests/unit/test_custom_component.py::test_build_config_return_type": 0.0011478740000256948, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_get_tree": 0.0013201460001255327, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_init": 0.0013840560000062396, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_ann_assign": 0.001138747000368312, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_arg_no_annotation": 0.0011034209999252198, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_arg_with_annotation": 0.001111756000227615, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_assign": 0.0011784220000663481, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_callable_details_no_args": 0.0011895120001099713, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_classes": 0.0016737260002628318, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_classes_raises": 0.0011571420000109356, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_function_def_init": 0.0011453690001417272, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_function_def_not_init": 0.0011243499998272455, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_functions": 0.0011915340000996366, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_global_vars": 0.0011525230002007447, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_imports_import": 0.0013042360001236375, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_imports_importfrom": 0.0011347989998284902, - "src/backend/tests/unit/test_custom_component.py::test_code_parser_syntax_error": 0.02597975599996971, - "src/backend/tests/unit/test_custom_component.py::test_component_code_null_error": 0.0011556679999102926, - "src/backend/tests/unit/test_custom_component.py::test_component_get_code_tree": 0.003885146999891731, - "src/backend/tests/unit/test_custom_component.py::test_component_get_code_tree_syntax_error": 0.0015461390000837127, - "src/backend/tests/unit/test_custom_component.py::test_component_get_function_valid": 0.0011847839998608833, - "src/backend/tests/unit/test_custom_component.py::test_component_init": 0.0011895540001205518, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_build_not_implemented": 0.001127585000176623, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_build_template_config": 0.0019278709999070998, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_class_template_validation_no_code": 0.0011493769998196512, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_code_tree_syntax_error": 0.0014912760002516734, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function": 0.0012428519999048149, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_args": 0.002510168000071644, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_args_no_args": 0.0017924170001606399, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_return_type": 0.0024800630001209356, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_return_type_no_return_type": 0.0023807959998976003, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_valid": 0.0011373750000984728, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_main_class_name": 0.002505048999637438, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_main_class_name_no_main_class": 0.0012605239999174955, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_init": 0.0011470620002000942, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_multiple_outputs": 0.008007306000081371, - "src/backend/tests/unit/test_custom_component.py::test_custom_component_subclass_from_lctoolcomponent": 0.005371524000111094, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow": 2.4699742259999766, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_from_request_data": 2.492217982000284, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_invalid_flow_id": 2.247461286999851, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_invalid_job_id": 2.27041394999992, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_polling": 2.554701679000118, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_start_only": 2.3750567750000755, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_start_with_inputs": 6.570981931000006, + "src/backend/tests/unit/test_chat_endpoint.py::test_build_flow_with_frozen_path": 15.681656723999595, + "src/backend/tests/unit/test_chat_endpoint.py::test_cancel_build_failure": 1.1945833270001458, + "src/backend/tests/unit/test_chat_endpoint.py::test_cancel_build_success": 4.457990335000204, + "src/backend/tests/unit/test_chat_endpoint.py::test_cancel_build_unexpected_error": 4.337748813999951, + "src/backend/tests/unit/test_chat_endpoint.py::test_cancel_build_with_cancelled_error": 1.1845815149999908, + "src/backend/tests/unit/test_chat_endpoint.py::test_cancel_nonexistent_build": 2.2976060600001347, + "src/backend/tests/unit/test_cli.py::test_components_path": 0.24591405800038046, + "src/backend/tests/unit/test_cli.py::test_superuser": 4.793549311999641, + "src/backend/tests/unit/test_custom_component.py::test_build_config_field_keys": 0.0011673159999645577, + "src/backend/tests/unit/test_custom_component.py::test_build_config_field_value_keys": 0.0011680169998271595, + "src/backend/tests/unit/test_custom_component.py::test_build_config_field_values_dict": 0.0011474669997824094, + "src/backend/tests/unit/test_custom_component.py::test_build_config_fields_dict": 0.0011539199997514515, + "src/backend/tests/unit/test_custom_component.py::test_build_config_has_fields": 0.0011474970001472684, + "src/backend/tests/unit/test_custom_component.py::test_build_config_no_code": 0.0011179330003869836, + "src/backend/tests/unit/test_custom_component.py::test_build_config_return_type": 0.0011516950000896031, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_get_tree": 0.001314320000119551, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_init": 0.0012826919996768993, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_ann_assign": 0.001146005000009609, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_arg_no_annotation": 0.001119576000064626, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_arg_with_annotation": 0.0011387600000034581, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_assign": 0.0011557619998256996, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_callable_details_no_args": 0.0011897869999302202, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_classes": 0.0016864269998677628, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_classes_raises": 0.0011786570000822394, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_function_def_init": 0.001152866999973412, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_function_def_not_init": 0.001142447999882279, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_functions": 0.0011975319998782652, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_global_vars": 0.0011876230000780197, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_imports_import": 0.0013261930000680877, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_parse_imports_importfrom": 0.0011779859999023756, + "src/backend/tests/unit/test_custom_component.py::test_code_parser_syntax_error": 0.03453115900015291, + "src/backend/tests/unit/test_custom_component.py::test_component_code_null_error": 0.0011570870001378353, + "src/backend/tests/unit/test_custom_component.py::test_component_get_code_tree": 0.004210780999983399, + "src/backend/tests/unit/test_custom_component.py::test_component_get_code_tree_syntax_error": 0.0015361349999238882, + "src/backend/tests/unit/test_custom_component.py::test_component_get_function_valid": 0.001220475000081933, + "src/backend/tests/unit/test_custom_component.py::test_component_init": 0.0011545209997620987, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_build_not_implemented": 0.0012166269998488133, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_build_template_config": 0.001959138000074745, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_class_template_validation_no_code": 0.001241764999804218, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_code_tree_syntax_error": 0.0015196239999113459, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function": 0.0012322160002895544, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_args": 0.0024646529996061872, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_args_no_args": 0.0017879780000384926, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_return_type": 0.0024555970003348193, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_entrypoint_return_type_no_return_type": 0.0018161800001053052, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_function_valid": 0.0011386419998871133, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_main_class_name": 0.0024558669999805716, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_get_main_class_name_no_main_class": 0.0012640069999179104, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_init": 0.0011322790001031535, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_multiple_outputs": 0.00809496300007595, + "src/backend/tests/unit/test_custom_component.py::test_custom_component_subclass_from_lctoolcomponent": 0.005296636000139188, "src/backend/tests/unit/test_custom_component.py::test_list_flows_flow_objects": 1.981454541994026, "src/backend/tests/unit/test_custom_component.py::test_list_flows_return_type": 0.36947908403817564, "src/backend/tests/unit/test_custom_component_with_client.py::test_feature_flags_add_toolkit_output": 2.7484489580092486, - "src/backend/tests/unit/test_custom_component_with_client.py::test_list_flows_flow_objects": 5.894062583999812, - "src/backend/tests/unit/test_custom_component_with_client.py::test_list_flows_return_type": 5.921240272999967, - "src/backend/tests/unit/test_data_class.py::test_add_method_for_integers": 0.001109091999978773, - "src/backend/tests/unit/test_data_class.py::test_add_method_for_strings": 0.001188101000025199, - "src/backend/tests/unit/test_data_class.py::test_add_method_with_non_overlapping_keys": 0.001136535999876287, - "src/backend/tests/unit/test_data_class.py::test_conversion_from_document": 0.0011431469999934052, - "src/backend/tests/unit/test_data_class.py::test_conversion_to_document": 0.0011526240002694976, - "src/backend/tests/unit/test_data_class.py::test_custom_attribute_get_set_del": 0.0011405719999402208, - "src/backend/tests/unit/test_data_class.py::test_custom_attribute_setting_and_getting": 0.0010987129999193712, - "src/backend/tests/unit/test_data_class.py::test_data_initialization": 0.0013738880002165388, - "src/backend/tests/unit/test_data_class.py::test_deep_copy": 0.0011084120001214615, - "src/backend/tests/unit/test_data_class.py::test_dir_includes_data_keys": 0.0012346179998985463, - "src/backend/tests/unit/test_data_class.py::test_dir_reflects_attribute_deletion": 0.0012156819996107515, - "src/backend/tests/unit/test_data_class.py::test_get_text_with_empty_data": 0.0010996050002631819, - "src/backend/tests/unit/test_data_class.py::test_get_text_with_none_data": 0.001122517999874617, - "src/backend/tests/unit/test_data_class.py::test_get_text_with_text_key": 0.0011100149999947462, - "src/backend/tests/unit/test_data_class.py::test_get_text_without_text_key": 0.001099925000062285, - "src/backend/tests/unit/test_data_class.py::test_str_and_dir_methods": 0.0012628419999600737, - "src/backend/tests/unit/test_data_class.py::test_validate_data_with_extra_keys": 0.0011316150000766356, + "src/backend/tests/unit/test_custom_component_with_client.py::test_list_flows_flow_objects": 4.7292096539999875, + "src/backend/tests/unit/test_custom_component_with_client.py::test_list_flows_return_type": 6.9686004249997495, + "src/backend/tests/unit/test_data_class.py::test_add_method_for_integers": 0.001062695999735297, + "src/backend/tests/unit/test_data_class.py::test_add_method_for_strings": 0.0010494820000985783, + "src/backend/tests/unit/test_data_class.py::test_add_method_with_non_overlapping_keys": 0.001068467000095552, + "src/backend/tests/unit/test_data_class.py::test_conversion_from_document": 0.0010727639999004168, + "src/backend/tests/unit/test_data_class.py::test_conversion_to_document": 0.0010589399998934823, + "src/backend/tests/unit/test_data_class.py::test_custom_attribute_get_set_del": 0.0010956380001516663, + "src/backend/tests/unit/test_data_class.py::test_custom_attribute_setting_and_getting": 0.001049992999924143, + "src/backend/tests/unit/test_data_class.py::test_data_initialization": 0.0012175359997854684, + "src/backend/tests/unit/test_data_class.py::test_deep_copy": 0.0010505630002626276, + "src/backend/tests/unit/test_data_class.py::test_dir_includes_data_keys": 0.0011782519998178032, + "src/backend/tests/unit/test_data_class.py::test_dir_reflects_attribute_deletion": 0.0011645170000065264, + "src/backend/tests/unit/test_data_class.py::test_get_text_with_empty_data": 0.0010148070000468579, + "src/backend/tests/unit/test_data_class.py::test_get_text_with_none_data": 0.001089717000240853, + "src/backend/tests/unit/test_data_class.py::test_get_text_with_text_key": 0.0010140149997823755, + "src/backend/tests/unit/test_data_class.py::test_get_text_without_text_key": 0.001074728999810759, + "src/backend/tests/unit/test_data_class.py::test_str_and_dir_methods": 0.0011798349999025959, + "src/backend/tests/unit/test_data_class.py::test_validate_data_with_extra_keys": 0.0010974309998346143, "src/backend/tests/unit/test_data_components.py::test_build_with_multiple_urls": 2.1151568749919534, "src/backend/tests/unit/test_data_components.py::test_directory_component_build_with_multithreading": 0.011123959033284336, "src/backend/tests/unit/test_data_components.py::test_directory_without_mocks": 0.17772862600395456, @@ -1071,141 +1091,141 @@ "src/backend/tests/unit/test_data_components.py::test_successful_get_request": 0.04254975001094863, "src/backend/tests/unit/test_data_components.py::test_timeout": 0.023703540966380388, "src/backend/tests/unit/test_data_components.py::test_url_component": 2.0934785840217955, - "src/backend/tests/unit/test_database.py::test_create_flow": 6.206546476000085, - "src/backend/tests/unit/test_database.py::test_create_flow_with_invalid_data": 8.797179173999893, - "src/backend/tests/unit/test_database.py::test_create_flows": 4.821576355000161, - "src/backend/tests/unit/test_database.py::test_delete_flow": 4.831171879000067, - "src/backend/tests/unit/test_database.py::test_delete_flows": 4.815463989999898, - "src/backend/tests/unit/test_database.py::test_delete_flows_with_transaction_and_build": 4.820408904999795, - "src/backend/tests/unit/test_database.py::test_delete_folder_with_flows_with_transaction_and_build": 4.820930561000068, - "src/backend/tests/unit/test_database.py::test_delete_nonexistent_flow": 4.806907261000106, - "src/backend/tests/unit/test_database.py::test_download_file": 6.6849879299998065, - "src/backend/tests/unit/test_database.py::test_get_flows_from_folder_pagination": 4.8081557620000694, - "src/backend/tests/unit/test_database.py::test_get_flows_from_folder_pagination_with_params": 4.840542024000115, - "src/backend/tests/unit/test_database.py::test_get_nonexistent_flow": 4.84999781800002, + "src/backend/tests/unit/test_database.py::test_create_flow": 4.764114273999894, + "src/backend/tests/unit/test_database.py::test_create_flow_with_invalid_data": 7.443235665000202, + "src/backend/tests/unit/test_database.py::test_create_flows": 4.839974942000026, + "src/backend/tests/unit/test_database.py::test_delete_flow": 4.827936959999988, + "src/backend/tests/unit/test_database.py::test_delete_flows": 4.862917957000036, + "src/backend/tests/unit/test_database.py::test_delete_flows_with_transaction_and_build": 4.832740845999979, + "src/backend/tests/unit/test_database.py::test_delete_folder_with_flows_with_transaction_and_build": 4.84130326699983, + "src/backend/tests/unit/test_database.py::test_delete_nonexistent_flow": 4.914326886000026, + "src/backend/tests/unit/test_database.py::test_download_file": 4.874941207999882, + "src/backend/tests/unit/test_database.py::test_get_flows_from_folder_pagination": 4.901122877000262, + "src/backend/tests/unit/test_database.py::test_get_flows_from_folder_pagination_with_params": 4.876955669999916, + "src/backend/tests/unit/test_database.py::test_get_nonexistent_flow": 4.7878203349998785, "src/backend/tests/unit/test_database.py::test_load_flows": 2.0784470409998903, "src/backend/tests/unit/test_database.py::test_migrate_transactions": 3.3142859160434455, "src/backend/tests/unit/test_database.py::test_migrate_transactions_no_duckdb": 4.5406213329406455, - "src/backend/tests/unit/test_database.py::test_read_flow": 4.893167331000313, - "src/backend/tests/unit/test_database.py::test_read_flows": 7.101095134999923, - "src/backend/tests/unit/test_database.py::test_read_flows_components_only": 4.763593108999885, - "src/backend/tests/unit/test_database.py::test_read_flows_components_only_paginated": 4.777096378999886, - "src/backend/tests/unit/test_database.py::test_read_flows_custom_page_size": 4.698627561000194, - "src/backend/tests/unit/test_database.py::test_read_flows_invalid_page": 4.744636593999758, - "src/backend/tests/unit/test_database.py::test_read_flows_invalid_size": 4.796259010999847, - "src/backend/tests/unit/test_database.py::test_read_flows_no_pagination_params": 4.753992682999979, - "src/backend/tests/unit/test_database.py::test_read_flows_pagination_with_flows": 4.722477330000174, - "src/backend/tests/unit/test_database.py::test_read_flows_pagination_with_params": 5.922566959999813, + "src/backend/tests/unit/test_database.py::test_read_flow": 4.81202247300007, + "src/backend/tests/unit/test_database.py::test_read_flows": 4.779787859999942, + "src/backend/tests/unit/test_database.py::test_read_flows_components_only": 4.815186603999791, + "src/backend/tests/unit/test_database.py::test_read_flows_components_only_paginated": 4.821178344000145, + "src/backend/tests/unit/test_database.py::test_read_flows_custom_page_size": 4.748238959999981, + "src/backend/tests/unit/test_database.py::test_read_flows_invalid_page": 4.826793145000238, + "src/backend/tests/unit/test_database.py::test_read_flows_invalid_size": 4.781145396000056, + "src/backend/tests/unit/test_database.py::test_read_flows_no_pagination_params": 4.778093977000026, + "src/backend/tests/unit/test_database.py::test_read_flows_pagination_with_flows": 4.779658993999874, + "src/backend/tests/unit/test_database.py::test_read_flows_pagination_with_params": 4.797613868999861, "src/backend/tests/unit/test_database.py::test_read_flows_pagination_without_params": 2.8355551669956185, - "src/backend/tests/unit/test_database.py::test_read_folder": 4.795439844999919, - "src/backend/tests/unit/test_database.py::test_read_folder_with_component_filter": 5.093126867999899, - "src/backend/tests/unit/test_database.py::test_read_folder_with_flows": 4.821225507000236, - "src/backend/tests/unit/test_database.py::test_read_folder_with_pagination": 4.844256709999854, - "src/backend/tests/unit/test_database.py::test_read_folder_with_search": 4.846325039000021, - "src/backend/tests/unit/test_database.py::test_read_nonexistent_folder": 4.916911030000165, - "src/backend/tests/unit/test_database.py::test_read_only_starter_projects": 4.743812325000135, - "src/backend/tests/unit/test_database.py::test_sqlite_pragmas": 0.07741035199978796, - "src/backend/tests/unit/test_database.py::test_update_flow": 4.748363051000069, - "src/backend/tests/unit/test_database.py::test_update_flow_idempotency": 4.901225831000147, - "src/backend/tests/unit/test_database.py::test_update_nonexistent_flow": 4.9004429109998, - "src/backend/tests/unit/test_database.py::test_upload_file": 4.805880701999968, - "src/backend/tests/unit/test_endpoints.py::test_build_vertex_invalid_flow_id": 4.847440394000159, - "src/backend/tests/unit/test_endpoints.py::test_build_vertex_invalid_vertex_id": 4.924610282000003, - "src/backend/tests/unit/test_endpoints.py::test_get_all": 1.3429839170000832, - "src/backend/tests/unit/test_endpoints.py::test_get_vertices": 4.827590869999767, - "src/backend/tests/unit/test_endpoints.py::test_get_vertices_flow_not_found": 4.840847115000088, - "src/backend/tests/unit/test_endpoints.py::test_invalid_flow_id": 4.932686984000156, - "src/backend/tests/unit/test_endpoints.py::test_invalid_prompt": 4.8788420989999395, - "src/backend/tests/unit/test_endpoints.py::test_invalid_run_with_input_type_chat": 1.3643034599999737, - "src/backend/tests/unit/test_endpoints.py::test_post_validate_code": 4.9439098069999545, - "src/backend/tests/unit/test_endpoints.py::test_starter_projects": 1.354738351000151, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_no_payload": 4.854708082000116, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_any": 1.4044506290001664, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_chat": 1.3507004850000612, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_text": 1.3808301879998908, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_any": 1.2841627020000033, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_debug": 1.3213513549999334, - "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_text": 4.898191451999992, - "src/backend/tests/unit/test_endpoints.py::test_valid_prompt": 4.879832291999946, - "src/backend/tests/unit/test_endpoints.py::test_various_prompts[The weather is {weather} today.-expected_input_variables1]": 4.912335114999905, - "src/backend/tests/unit/test_endpoints.py::test_various_prompts[This prompt has no variables.-expected_input_variables2]": 4.855361349000077, - "src/backend/tests/unit/test_endpoints.py::test_various_prompts[{a}, {b}, and {c} are variables.-expected_input_variables3]": 4.876217938999844, - "src/backend/tests/unit/test_endpoints.py::test_various_prompts[{color} is my favorite color.-expected_input_variables0]": 4.888749110999697, - "src/backend/tests/unit/test_experimental_components.py::test_python_function_component": 0.0028058539999165077, + "src/backend/tests/unit/test_database.py::test_read_folder": 4.8744446150001295, + "src/backend/tests/unit/test_database.py::test_read_folder_with_component_filter": 4.889636397000004, + "src/backend/tests/unit/test_database.py::test_read_folder_with_flows": 4.9268685550000555, + "src/backend/tests/unit/test_database.py::test_read_folder_with_pagination": 4.860787206000168, + "src/backend/tests/unit/test_database.py::test_read_folder_with_search": 4.894530705000307, + "src/backend/tests/unit/test_database.py::test_read_nonexistent_folder": 4.853263062999758, + "src/backend/tests/unit/test_database.py::test_read_only_starter_projects": 4.924677887999906, + "src/backend/tests/unit/test_database.py::test_sqlite_pragmas": 0.08257789099957336, + "src/backend/tests/unit/test_database.py::test_update_flow": 4.78851788299994, + "src/backend/tests/unit/test_database.py::test_update_flow_idempotency": 4.853544677999935, + "src/backend/tests/unit/test_database.py::test_update_nonexistent_flow": 4.940099471999702, + "src/backend/tests/unit/test_database.py::test_upload_file": 4.960085886000115, + "src/backend/tests/unit/test_endpoints.py::test_build_vertex_invalid_flow_id": 4.9214423200000965, + "src/backend/tests/unit/test_endpoints.py::test_build_vertex_invalid_vertex_id": 4.934697851999999, + "src/backend/tests/unit/test_endpoints.py::test_get_all": 1.3380501220001406, + "src/backend/tests/unit/test_endpoints.py::test_get_vertices": 4.939289105000171, + "src/backend/tests/unit/test_endpoints.py::test_get_vertices_flow_not_found": 4.891586977000088, + "src/backend/tests/unit/test_endpoints.py::test_invalid_flow_id": 4.925568125000154, + "src/backend/tests/unit/test_endpoints.py::test_invalid_prompt": 4.869134484999904, + "src/backend/tests/unit/test_endpoints.py::test_invalid_run_with_input_type_chat": 1.3502060599998913, + "src/backend/tests/unit/test_endpoints.py::test_post_validate_code": 4.883410058000209, + "src/backend/tests/unit/test_endpoints.py::test_starter_projects": 1.3869552969999859, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_no_payload": 4.898617898999873, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_any": 1.320218228000158, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_chat": 1.3527640390000215, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_input_type_text": 1.3855801430001975, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_any": 1.3959011209999517, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_debug": 1.319448502999876, + "src/backend/tests/unit/test_endpoints.py::test_successful_run_with_output_type_text": 4.898628245000282, + "src/backend/tests/unit/test_endpoints.py::test_valid_prompt": 4.933444129000009, + "src/backend/tests/unit/test_endpoints.py::test_various_prompts[The weather is {weather} today.-expected_input_variables1]": 4.87758873599978, + "src/backend/tests/unit/test_endpoints.py::test_various_prompts[This prompt has no variables.-expected_input_variables2]": 4.952160033999689, + "src/backend/tests/unit/test_endpoints.py::test_various_prompts[{a}, {b}, and {c} are variables.-expected_input_variables3]": 4.906502733000025, + "src/backend/tests/unit/test_endpoints.py::test_various_prompts[{color} is my favorite color.-expected_input_variables0]": 4.9382357750000665, + "src/backend/tests/unit/test_experimental_components.py::test_python_function_component": 0.0029106780002621235, "src/backend/tests/unit/test_files.py::test_delete_file": 11.937014124996495, "src/backend/tests/unit/test_files.py::test_download_file": 9.813468083040789, "src/backend/tests/unit/test_files.py::test_file_operations": 11.151997918030247, "src/backend/tests/unit/test_files.py::test_list_files": 11.372431917930953, "src/backend/tests/unit/test_files.py::test_upload_file": 9.378826959000435, - "src/backend/tests/unit/test_frontend_nodes.py::test_frontend_node_to_dict": 0.0013559139997596503, - "src/backend/tests/unit/test_frontend_nodes.py::test_template_field_defaults": 0.0011330659999657655, - "src/backend/tests/unit/test_frontend_nodes.py::test_template_to_dict": 0.0012032669999371137, - "src/backend/tests/unit/test_helper_components.py::test_data_as_text_component": 0.0020929620000060822, - "src/backend/tests/unit/test_helper_components.py::test_uuid_generator_component": 0.008224298999948587, - "src/backend/tests/unit/test_initial_setup.py::test_create_or_update_starter_projects": 4.906904624999925, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://example.com/myzip.zip-https://example.com/myzip.zip]": 0.0019821619998765527, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.02593977099991207, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles.git-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.02531231999978445, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.025231239000277128, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/commit/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9-https://github.com/langflow-ai/langflow-bundles/archive/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9.zip]": 0.0021507279998331796, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/commit/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9/-https://github.com/langflow-ai/langflow-bundles/archive/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9.zip]": 0.0020138410000072327, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/foo/v1.0.0-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/foo/v1.0.0.zip]": 0.002039979000301173, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/foo/v1.0.0/-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/foo/v1.0.0.zip]": 0.0020085010000912007, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/v1.0.0-0_1-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/v1.0.0-0_1.zip]": 0.0021753830001216556, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some.branch-0_1-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some.branch-0_1.zip]": 0.00226720499995281, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some/branch-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some/branch.zip]": 0.0020800860002054833, - "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some/branch/-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some/branch.zip]": 0.0020661890000610583, - "src/backend/tests/unit/test_initial_setup.py::test_get_project_data": 0.0030368250004357833, - "src/backend/tests/unit/test_initial_setup.py::test_load_bundles_from_urls": 4.948955920999879, - "src/backend/tests/unit/test_initial_setup.py::test_load_starter_projects": 0.0028618679998544394, - "src/backend/tests/unit/test_initial_setup.py::test_refresh_starter_projects": 4.585848145999989, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_create_secret": 0.003587196000125914, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_delete_secret": 0.0022229450000850193, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_email_address": 0.0011099450000529032, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_encode_string": 0.0011259049999807758, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_encode_uuid": 0.0011037720000786067, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_ends_with_non_alphanumeric": 0.0012673789999553264, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_get_secret": 0.002328051999938907, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_long_string": 0.001106287000084194, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_starts_with_non_alphanumeric": 0.0011084929997196014, - "src/backend/tests/unit/test_kubernetes_secrets.py::test_uuid_case_insensitivity": 0.0011494189998302318, + "src/backend/tests/unit/test_frontend_nodes.py::test_frontend_node_to_dict": 0.0013869159997739189, + "src/backend/tests/unit/test_frontend_nodes.py::test_template_field_defaults": 0.0012469249998048326, + "src/backend/tests/unit/test_frontend_nodes.py::test_template_to_dict": 0.0013203199998770287, + "src/backend/tests/unit/test_helper_components.py::test_data_as_text_component": 0.002132802999994965, + "src/backend/tests/unit/test_helper_components.py::test_uuid_generator_component": 0.008139716000187036, + "src/backend/tests/unit/test_initial_setup.py::test_create_or_update_starter_projects": 4.967100948999814, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://example.com/myzip.zip-https://example.com/myzip.zip]": 0.002032736000046498, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.02581550200034144, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles.git-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.02490334500021163, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/main.zip]": 0.025091719000101875, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/commit/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9-https://github.com/langflow-ai/langflow-bundles/archive/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9.zip]": 0.002233228999784842, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/commit/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9/-https://github.com/langflow-ai/langflow-bundles/archive/68428ce16729a385fe1bcc0f1ec91fd5f5f420b9.zip]": 0.002063763000023755, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/foo/v1.0.0-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/foo/v1.0.0.zip]": 0.0020724490002521634, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/foo/v1.0.0/-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/foo/v1.0.0.zip]": 0.002362702000027639, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/releases/tag/v1.0.0-0_1-https://github.com/langflow-ai/langflow-bundles/archive/refs/tags/v1.0.0-0_1.zip]": 0.002293193999776122, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some.branch-0_1-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some.branch-0_1.zip]": 0.0025387910002336866, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some/branch-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some/branch.zip]": 0.002104029000065566, + "src/backend/tests/unit/test_initial_setup.py::test_detect_github_url[https://github.com/langflow-ai/langflow-bundles/tree/some/branch/-https://github.com/langflow-ai/langflow-bundles/archive/refs/heads/some/branch.zip]": 0.0020589539999491535, + "src/backend/tests/unit/test_initial_setup.py::test_get_project_data": 0.0026740949997474672, + "src/backend/tests/unit/test_initial_setup.py::test_load_bundles_from_urls": 4.940079624999953, + "src/backend/tests/unit/test_initial_setup.py::test_load_starter_projects": 0.002901470999859157, + "src/backend/tests/unit/test_initial_setup.py::test_refresh_starter_projects": 4.928320513999779, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_create_secret": 0.003412367999999333, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_delete_secret": 0.002439334999962739, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_email_address": 0.0010365500002080807, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_encode_string": 0.0010476410000137548, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_encode_uuid": 0.0010711549998632108, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_ends_with_non_alphanumeric": 0.0010400049998224858, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_get_secret": 0.0023020599999199476, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_long_string": 0.0010472199996911513, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_starts_with_non_alphanumeric": 0.0010391140001502208, + "src/backend/tests/unit/test_kubernetes_secrets.py::test_uuid_case_insensitivity": 0.0010441139997965365, "src/backend/tests/unit/test_loading.py::test_load_flow_from_json": 1.2976477909833193, - "src/backend/tests/unit/test_loading.py::test_load_flow_from_json_object": 0.02233306299990545, + "src/backend/tests/unit/test_loading.py::test_load_flow_from_json_object": 0.0027901620001102856, "src/backend/tests/unit/test_loading.py::test_load_flow_from_json_with_tweaks": 0.005636290996335447, - "src/backend/tests/unit/test_logger.py::test_enabled": 0.0011239609998483502, - "src/backend/tests/unit/test_logger.py::test_get_after_timestamp": 0.0011802070002886467, - "src/backend/tests/unit/test_logger.py::test_get_before_timestamp": 0.0011767689998123387, - "src/backend/tests/unit/test_logger.py::test_get_last_n": 0.0011722510000709008, - "src/backend/tests/unit/test_logger.py::test_init_default": 0.0011962250000578933, - "src/backend/tests/unit/test_logger.py::test_init_with_env_variable": 0.0017751679999946646, - "src/backend/tests/unit/test_logger.py::test_len": 0.001182961999802501, - "src/backend/tests/unit/test_logger.py::test_max_size": 0.001142144000141343, - "src/backend/tests/unit/test_logger.py::test_write": 0.0011728619997484202, - "src/backend/tests/unit/test_logger.py::test_write_overflow": 0.0011951040000894864, - "src/backend/tests/unit/test_login.py::test_login_successful": 4.841411439000012, - "src/backend/tests/unit/test_login.py::test_login_unsuccessful_wrong_password": 5.053332158000103, - "src/backend/tests/unit/test_login.py::test_login_unsuccessful_wrong_username": 4.8824262430000545, - "src/backend/tests/unit/test_messages.py::test_aadd_messages": 4.9343705159999445, - "src/backend/tests/unit/test_messages.py::test_aadd_messagetables": 4.94500571799972, - "src/backend/tests/unit/test_messages.py::test_add_messages": 4.93423629300014, + "src/backend/tests/unit/test_logger.py::test_enabled": 0.0010874940001031064, + "src/backend/tests/unit/test_logger.py::test_get_after_timestamp": 0.0011617650002335722, + "src/backend/tests/unit/test_logger.py::test_get_before_timestamp": 0.0011362249997546314, + "src/backend/tests/unit/test_logger.py::test_get_last_n": 0.001113385000053313, + "src/backend/tests/unit/test_logger.py::test_init_default": 0.0010652529997514648, + "src/backend/tests/unit/test_logger.py::test_init_with_env_variable": 0.0017405079997843131, + "src/backend/tests/unit/test_logger.py::test_len": 0.0011268989999280166, + "src/backend/tests/unit/test_logger.py::test_max_size": 0.0010823959999015642, + "src/backend/tests/unit/test_logger.py::test_write": 0.0012108550001812546, + "src/backend/tests/unit/test_logger.py::test_write_overflow": 0.0011248959999647923, + "src/backend/tests/unit/test_login.py::test_login_successful": 4.945273008999948, + "src/backend/tests/unit/test_login.py::test_login_unsuccessful_wrong_password": 4.92017123100004, + "src/backend/tests/unit/test_login.py::test_login_unsuccessful_wrong_username": 4.937795520000009, + "src/backend/tests/unit/test_messages.py::test_aadd_messages": 4.947213692000105, + "src/backend/tests/unit/test_messages.py::test_aadd_messagetables": 4.991827150000063, + "src/backend/tests/unit/test_messages.py::test_add_messages": 4.9629396550001275, "src/backend/tests/unit/test_messages.py::test_add_messagetables": 0.05725845799315721, - "src/backend/tests/unit/test_messages.py::test_adelete_messages": 4.907024259999844, - "src/backend/tests/unit/test_messages.py::test_aget_messages": 5.026921533999939, - "src/backend/tests/unit/test_messages.py::test_astore_message": 4.9967469670000355, - "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_content_blocks": 5.028460347999953, - "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_nested_properties": 4.947630278999895, - "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_timestamp": 5.103293082000164, - "src/backend/tests/unit/test_messages.py::test_aupdate_mixed_messages": 5.6380528490001325, - "src/backend/tests/unit/test_messages.py::test_aupdate_multiple_messages": 5.124969539999938, - "src/backend/tests/unit/test_messages.py::test_aupdate_multiple_messages_with_timestamps": 5.0038994169997295, + "src/backend/tests/unit/test_messages.py::test_adelete_messages": 5.045321878000095, + "src/backend/tests/unit/test_messages.py::test_aget_messages": 5.041624159000094, + "src/backend/tests/unit/test_messages.py::test_astore_message": 4.9959002059999875, + "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_content_blocks": 4.988629300999946, + "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_nested_properties": 4.973714109000184, + "src/backend/tests/unit/test_messages.py::test_aupdate_message_with_timestamp": 5.026889536999988, + "src/backend/tests/unit/test_messages.py::test_aupdate_mixed_messages": 8.54202101299984, + "src/backend/tests/unit/test_messages.py::test_aupdate_multiple_messages": 4.9667422109998824, + "src/backend/tests/unit/test_messages.py::test_aupdate_multiple_messages_with_timestamps": 4.9824234120001165, "src/backend/tests/unit/test_messages.py::test_aupdate_nonexistent_message": 3.133551847000035, - "src/backend/tests/unit/test_messages.py::test_aupdate_nonexistent_message_generates_a_new_message": 5.823888748999934, - "src/backend/tests/unit/test_messages.py::test_aupdate_single_message": 4.9432559120000406, - "src/backend/tests/unit/test_messages.py::test_convert_to_langchain[convert_to_langchain_type]": 0.0012971549999747367, - "src/backend/tests/unit/test_messages.py::test_convert_to_langchain[message]": 0.0014963880000777863, - "src/backend/tests/unit/test_messages.py::test_delete_messages": 4.889633313999866, - "src/backend/tests/unit/test_messages.py::test_get_messages": 4.90916934400002, - "src/backend/tests/unit/test_messages.py::test_store_message": 4.960585068, + "src/backend/tests/unit/test_messages.py::test_aupdate_nonexistent_message_generates_a_new_message": 4.99513563399978, + "src/backend/tests/unit/test_messages.py::test_aupdate_single_message": 5.0298379269997895, + "src/backend/tests/unit/test_messages.py::test_convert_to_langchain[convert_to_langchain_type]": 0.0012937620001594041, + "src/backend/tests/unit/test_messages.py::test_convert_to_langchain[message]": 0.0014901580002515402, + "src/backend/tests/unit/test_messages.py::test_delete_messages": 4.983304529999941, + "src/backend/tests/unit/test_messages.py::test_get_messages": 4.992318366000063, + "src/backend/tests/unit/test_messages.py::test_store_message": 5.03865034200021, "src/backend/tests/unit/test_messages.py::test_update_message_with_content_blocks": 5.128578291973099, "src/backend/tests/unit/test_messages.py::test_update_message_with_nested_properties": 1.5983659149496816, "src/backend/tests/unit/test_messages.py::test_update_message_with_timestamp": 4.5035865410463884, @@ -1214,111 +1234,111 @@ "src/backend/tests/unit/test_messages.py::test_update_multiple_messages_with_timestamps": 4.659952084010001, "src/backend/tests/unit/test_messages.py::test_update_nonexistent_message": 4.162011249980424, "src/backend/tests/unit/test_messages.py::test_update_single_message": 8.01532608200796, - "src/backend/tests/unit/test_messages_endpoints.py::test_delete_messages": 4.959882261000075, - "src/backend/tests/unit/test_messages_endpoints.py::test_delete_messages_session": 5.146924554999941, - "src/backend/tests/unit/test_messages_endpoints.py::test_no_messages_found_with_given_session_id": 5.11565847199995, - "src/backend/tests/unit/test_messages_endpoints.py::test_successfully_update_session_id": 5.189987007000127, - "src/backend/tests/unit/test_messages_endpoints.py::test_update_message": 5.072111406999966, - "src/backend/tests/unit/test_messages_endpoints.py::test_update_message_not_found": 5.017526119999729, - "src/backend/tests/unit/test_process.py::test_load_langchain_object_with_cached_session": 0.0074954349997824465, + "src/backend/tests/unit/test_messages_endpoints.py::test_delete_messages": 4.9457057889999305, + "src/backend/tests/unit/test_messages_endpoints.py::test_delete_messages_session": 4.960971324999946, + "src/backend/tests/unit/test_messages_endpoints.py::test_no_messages_found_with_given_session_id": 5.003351104000103, + "src/backend/tests/unit/test_messages_endpoints.py::test_successfully_update_session_id": 5.002987774999838, + "src/backend/tests/unit/test_messages_endpoints.py::test_update_message": 4.984984442000268, + "src/backend/tests/unit/test_messages_endpoints.py::test_update_message_not_found": 5.030308159000015, + "src/backend/tests/unit/test_process.py::test_load_langchain_object_with_cached_session": 0.007618731999855299, "src/backend/tests/unit/test_process.py::test_load_langchain_object_with_no_cached_session": 2.9178847920848057, "src/backend/tests/unit/test_process.py::test_load_langchain_object_without_session_id": 2.8941064990358427, - "src/backend/tests/unit/test_process.py::test_multiple_tweaks": 0.0010796970000228612, - "src/backend/tests/unit/test_process.py::test_no_tweaks": 0.001199961000111216, - "src/backend/tests/unit/test_process.py::test_single_tweak": 0.0011152240001592872, - "src/backend/tests/unit/test_process.py::test_tweak_no_node_id": 0.0010790159999487514, - "src/backend/tests/unit/test_process.py::test_tweak_not_in_template": 0.0010447530000874394, - "src/backend/tests/unit/test_schema.py::TestInput::test_field_type_str": 0.0010968489998504083, - "src/backend/tests/unit/test_schema.py::TestInput::test_field_type_type": 0.0010796480000863085, - "src/backend/tests/unit/test_schema.py::TestInput::test_input_to_dict": 0.0010768519998691772, - "src/backend/tests/unit/test_schema.py::TestInput::test_invalid_field_type": 0.0011018190002687334, - "src/backend/tests/unit/test_schema.py::TestInput::test_post_process_type_function": 0.0015882880002209276, - "src/backend/tests/unit/test_schema.py::TestInput::test_serialize_field_type": 0.0010953359999348322, - "src/backend/tests/unit/test_schema.py::TestInput::test_validate_type_class": 0.0010824619998857088, - "src/backend/tests/unit/test_schema.py::TestInput::test_validate_type_string": 0.0010748979998425057, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_add_types": 0.0010691580000639078, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_default": 0.0011120780000055674, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_set_selected": 0.0010905780000030063, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_to_dict": 0.0010771230001864751, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_validate_display_name": 0.0010782960000597086, - "src/backend/tests/unit/test_schema.py::TestOutput::test_output_validate_model": 0.0010688959996514313, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_custom_type": 0.0010467069998867373, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_int_type": 0.0010564239998984704, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_list_custom_type": 0.0010760300001493306, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_list_int_type": 0.001042628000050172, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_union_custom_type": 0.0010818920002293453, - "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_union_type": 0.0010705010001856863, - "src/backend/tests/unit/test_setup_superuser.py::test_teardown_superuser_default_superuser": 0.0023005990001365717, - "src/backend/tests/unit/test_setup_superuser.py::test_teardown_superuser_no_default_superuser": 0.0026333100001920684, - "src/backend/tests/unit/test_telemetry.py::test_gauge": 0.00109529799988195, - "src/backend/tests/unit/test_telemetry.py::test_gauge_with_counter_method": 0.0012148499997692852, - "src/backend/tests/unit/test_telemetry.py::test_gauge_with_historgram_method": 0.0012139790001128858, - "src/backend/tests/unit/test_telemetry.py::test_gauge_with_up_down_counter_method": 0.0011839229998713563, - "src/backend/tests/unit/test_telemetry.py::test_increment_counter": 0.001051303999929587, - "src/backend/tests/unit/test_telemetry.py::test_increment_counter_empty_label": 0.0011435769999934564, - "src/backend/tests/unit/test_telemetry.py::test_increment_counter_missing_mandatory_label": 0.0011712489997535158, - "src/backend/tests/unit/test_telemetry.py::test_increment_counter_unregisted_metric": 0.001176709000219489, - "src/backend/tests/unit/test_telemetry.py::test_init": 0.0011044119999041868, - "src/backend/tests/unit/test_telemetry.py::test_missing_labels": 0.001114734000111639, - "src/backend/tests/unit/test_telemetry.py::test_multithreaded_singleton": 0.0056867140001486405, - "src/backend/tests/unit/test_telemetry.py::test_multithreaded_singleton_race_condition": 0.01843684199980089, - "src/backend/tests/unit/test_telemetry.py::test_opentelementry_singleton": 0.0010487409999768715, - "src/backend/tests/unit/test_template.py::test_build_template_from_function": 0.003698669000186783, - "src/backend/tests/unit/test_template.py::test_get_base_classes": 0.0010989329998665198, - "src/backend/tests/unit/test_template.py::test_get_default_factory": 0.0011328159998811316, - "src/backend/tests/unit/test_user.py::test_add_user": 5.095513831000062, - "src/backend/tests/unit/test_user.py::test_data_consistency_after_delete": 5.116437676000032, - "src/backend/tests/unit/test_user.py::test_data_consistency_after_update": 5.23022885499995, - "src/backend/tests/unit/test_user.py::test_deactivated_user_cannot_access": 5.263172143999782, - "src/backend/tests/unit/test_user.py::test_deactivated_user_cannot_login": 5.169008720000193, - "src/backend/tests/unit/test_user.py::test_delete_user": 5.0365877770000225, - "src/backend/tests/unit/test_user.py::test_delete_user_wrong_id": 5.013375949999954, - "src/backend/tests/unit/test_user.py::test_inactive_user": 5.012384640000164, - "src/backend/tests/unit/test_user.py::test_normal_user_cant_delete_user": 5.036318652000091, - "src/backend/tests/unit/test_user.py::test_normal_user_cant_read_all_users": 5.139839816999711, - "src/backend/tests/unit/test_user.py::test_patch_reset_password": 5.071319926000115, - "src/backend/tests/unit/test_user.py::test_patch_user": 5.103993855999988, - "src/backend/tests/unit/test_user.py::test_patch_user_wrong_id": 5.020923745000118, - "src/backend/tests/unit/test_user.py::test_read_all_users": 5.249040094000065, - "src/backend/tests/unit/test_user.py::test_user_waiting_for_approval": 5.391605378999884, - "src/backend/tests/unit/test_validate_code.py::test_create_class": 0.001740281000138566, - "src/backend/tests/unit/test_validate_code.py::test_create_class_module_import": 0.009688017999906151, - "src/backend/tests/unit/test_validate_code.py::test_create_class_with_external_variables_and_functions": 0.00163109599998279, - "src/backend/tests/unit/test_validate_code.py::test_create_class_with_multiple_external_classes": 0.0017389579998052795, - "src/backend/tests/unit/test_validate_code.py::test_create_function": 0.0014630830000896822, - "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_function": 0.0012402670001847582, - "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_module": 0.0013896259999910399, - "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_schema": 0.0014312049997897702, - "src/backend/tests/unit/test_validate_code.py::test_execute_function_success": 0.0012412179999046202, - "src/backend/tests/unit/test_validate_code.py::test_validate_code": 0.0015948490001846949, - "src/backend/tests/unit/test_version.py::test_compute_main": 0.0010721520000060991, - "src/backend/tests/unit/test_version.py::test_version": 0.001075990000344973, - "src/backend/tests/unit/test_webhook.py::test_webhook_endpoint": 5.5272705739998855, - "src/backend/tests/unit/test_webhook.py::test_webhook_flow_on_run_endpoint": 5.026620266999998, - "src/backend/tests/unit/test_webhook.py::test_webhook_with_random_payload": 5.032887372999767, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol::password@host-protocol::password@host]": 0.0011214959999961138, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pa:ss:word@host-protocol:user:pa:ss:word@host]": 0.0011414330001571216, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pa@ss@word@host-protocol:user:pa%40ss%40word@host]": 0.0011789430000135326, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pass@word@host-protocol:user:pass%40word@host]": 0.0011647859998902277, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:password@-protocol:user:password@]": 0.001097440000194183, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:password@host-protocol:user:password@host]": 0.0016854479999892646, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user@host-protocol:user@host]": 0.0012541040002815862, - "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[user:password@host-user:password@host]": 0.001168943999800831, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[-]": 0.001123929000186763, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/\\ndocu\\nments/file.txt-/home/user/\\\\ndocu\\\\nments/file.txt]": 0.0011217159999432624, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/docu\\n\\nments/file.txt-/home/user/docu\\\\n\\\\nments/file.txt]": 0.0011107359998732136, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/docu\\nments/file.txt-/home/user/docu\\\\nments/file.txt]": 0.0011387179999928776, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/documents/\\n-/home/user/documents/\\\\n]": 0.0011062169999149774, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/documents/file.txt-/home/user/documents/file.txt]": 0.0011271060000126454, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/my-\\ndocs/special_file!.pdf-/home/user/my-\\\\ndocs/special_file!.pdf]": 0.001114171999915925, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:/Users\\\\Documents/file.txt-C:/Users\\\\Documents/file.txt]": 0.0011093920002167579, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\Documents\\\\-C:\\\\Users\\\\Documents\\\\]": 0.0011005560002104176, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\Documents\\\\file.txt-C:\\\\Users\\\\Documents\\\\file.txt]": 0.0010760109998955159, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\\\nDocuments\\\\file.txt-C:\\\\Users\\\\\\\\nDocuments\\\\file.txt]": 0.001147712999909345, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\\\\\\\server\\\\share\\\\file.txt-\\\\\\\\server\\\\share\\\\file.txt]": 0.0011209550002604374, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\n/home/user/documents/-\\\\n/home/user/documents/]": 0.0011368420000508195, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\n\\n\\n-\\\\n\\\\n\\\\n]": 0.0010930520002148114, - "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path_type": 0.0010342210000544583, + "src/backend/tests/unit/test_process.py::test_multiple_tweaks": 0.0011387719998765533, + "src/backend/tests/unit/test_process.py::test_no_tweaks": 0.0012810279999939667, + "src/backend/tests/unit/test_process.py::test_single_tweak": 0.001145995000115363, + "src/backend/tests/unit/test_process.py::test_tweak_no_node_id": 0.0011428390000673971, + "src/backend/tests/unit/test_process.py::test_tweak_not_in_template": 0.001108143999999811, + "src/backend/tests/unit/test_schema.py::TestInput::test_field_type_str": 0.0011985240000740305, + "src/backend/tests/unit/test_schema.py::TestInput::test_field_type_type": 0.0011828439999135298, + "src/backend/tests/unit/test_schema.py::TestInput::test_input_to_dict": 0.0011559540000689594, + "src/backend/tests/unit/test_schema.py::TestInput::test_invalid_field_type": 0.0011758909997752198, + "src/backend/tests/unit/test_schema.py::TestInput::test_post_process_type_function": 0.001622355999870706, + "src/backend/tests/unit/test_schema.py::TestInput::test_serialize_field_type": 0.0010903809998126235, + "src/backend/tests/unit/test_schema.py::TestInput::test_validate_type_class": 0.001105058000121062, + "src/backend/tests/unit/test_schema.py::TestInput::test_validate_type_string": 0.0010964930002046458, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_add_types": 0.0011178609997841704, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_default": 0.0011048889998619416, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_set_selected": 0.0010877159998017305, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_to_dict": 0.0010929059999398305, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_validate_display_name": 0.001080313000102251, + "src/backend/tests/unit/test_schema.py::TestOutput::test_output_validate_model": 0.0011028139997506514, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_custom_type": 0.00109593200022573, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_int_type": 0.0010608150000734895, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_list_custom_type": 0.0010908100000506238, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_list_int_type": 0.0010716960002810083, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_union_custom_type": 0.001087004999817509, + "src/backend/tests/unit/test_schema.py::TestPostProcessType::test_union_type": 0.001065224000285525, + "src/backend/tests/unit/test_setup_superuser.py::test_teardown_superuser_default_superuser": 0.002576863000058438, + "src/backend/tests/unit/test_setup_superuser.py::test_teardown_superuser_no_default_superuser": 0.0026221790001272893, + "src/backend/tests/unit/test_telemetry.py::test_gauge": 0.0011752509999496397, + "src/backend/tests/unit/test_telemetry.py::test_gauge_with_counter_method": 0.0012849049999203999, + "src/backend/tests/unit/test_telemetry.py::test_gauge_with_historgram_method": 0.001218921000145201, + "src/backend/tests/unit/test_telemetry.py::test_gauge_with_up_down_counter_method": 0.0012472150001485716, + "src/backend/tests/unit/test_telemetry.py::test_increment_counter": 0.0011544819999471656, + "src/backend/tests/unit/test_telemetry.py::test_increment_counter_empty_label": 0.001181051999765259, + "src/backend/tests/unit/test_telemetry.py::test_increment_counter_missing_mandatory_label": 0.0012129299998377974, + "src/backend/tests/unit/test_telemetry.py::test_increment_counter_unregisted_metric": 0.0011866030001783656, + "src/backend/tests/unit/test_telemetry.py::test_init": 0.0011488509999253438, + "src/backend/tests/unit/test_telemetry.py::test_missing_labels": 0.0011549510002168972, + "src/backend/tests/unit/test_telemetry.py::test_multithreaded_singleton": 0.0059535650000270834, + "src/backend/tests/unit/test_telemetry.py::test_multithreaded_singleton_race_condition": 0.01878687299995363, + "src/backend/tests/unit/test_telemetry.py::test_opentelementry_singleton": 0.001110036999989461, + "src/backend/tests/unit/test_template.py::test_build_template_from_function": 0.003786045999959242, + "src/backend/tests/unit/test_template.py::test_get_base_classes": 0.0010771160000331292, + "src/backend/tests/unit/test_template.py::test_get_default_factory": 0.0011814610002147674, + "src/backend/tests/unit/test_user.py::test_add_user": 5.060312099000157, + "src/backend/tests/unit/test_user.py::test_data_consistency_after_delete": 8.921201092000047, + "src/backend/tests/unit/test_user.py::test_data_consistency_after_update": 5.074948174999918, + "src/backend/tests/unit/test_user.py::test_deactivated_user_cannot_access": 5.057807820000107, + "src/backend/tests/unit/test_user.py::test_deactivated_user_cannot_login": 5.054209448999927, + "src/backend/tests/unit/test_user.py::test_delete_user": 5.126000978999855, + "src/backend/tests/unit/test_user.py::test_delete_user_wrong_id": 5.023830184999952, + "src/backend/tests/unit/test_user.py::test_inactive_user": 5.125092760999905, + "src/backend/tests/unit/test_user.py::test_normal_user_cant_delete_user": 5.09079193499997, + "src/backend/tests/unit/test_user.py::test_normal_user_cant_read_all_users": 5.092044624999744, + "src/backend/tests/unit/test_user.py::test_patch_reset_password": 5.078576687999885, + "src/backend/tests/unit/test_user.py::test_patch_user": 5.071030970000265, + "src/backend/tests/unit/test_user.py::test_patch_user_wrong_id": 5.0157716059998165, + "src/backend/tests/unit/test_user.py::test_read_all_users": 5.100748590000194, + "src/backend/tests/unit/test_user.py::test_user_waiting_for_approval": 4.999231699999882, + "src/backend/tests/unit/test_validate_code.py::test_create_class": 0.0017609159997391544, + "src/backend/tests/unit/test_validate_code.py::test_create_class_module_import": 0.009161056999801076, + "src/backend/tests/unit/test_validate_code.py::test_create_class_with_external_variables_and_functions": 0.0016795439998986694, + "src/backend/tests/unit/test_validate_code.py::test_create_class_with_multiple_external_classes": 0.0018408859998544358, + "src/backend/tests/unit/test_validate_code.py::test_create_function": 0.001511159999836309, + "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_function": 0.0013015970002925314, + "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_module": 0.001390181999795459, + "src/backend/tests/unit/test_validate_code.py::test_execute_function_missing_schema": 0.0014898899999025161, + "src/backend/tests/unit/test_validate_code.py::test_execute_function_success": 0.0012982900000224618, + "src/backend/tests/unit/test_validate_code.py::test_validate_code": 0.0016420129998095945, + "src/backend/tests/unit/test_version.py::test_compute_main": 0.0010989859999881446, + "src/backend/tests/unit/test_version.py::test_version": 0.0011513739996189543, + "src/backend/tests/unit/test_webhook.py::test_webhook_endpoint": 5.065778013999989, + "src/backend/tests/unit/test_webhook.py::test_webhook_flow_on_run_endpoint": 5.060435240000288, + "src/backend/tests/unit/test_webhook.py::test_webhook_with_random_payload": 5.089594468000087, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol::password@host-protocol::password@host]": 0.0012124800000492542, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pa:ss:word@host-protocol:user:pa:ss:word@host]": 0.0012291299999560579, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pa@ss@word@host-protocol:user:pa%40ss%40word@host]": 0.0012393389999942883, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:pass@word@host-protocol:user:pass%40word@host]": 0.0012273280001409148, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:password@-protocol:user:password@]": 0.001235592000057295, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user:password@host-protocol:user:password@host]": 0.001550662999989072, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[protocol:user@host-protocol:user@host]": 0.0012451899999632587, + "src/backend/tests/unit/utils/test_connection_string_parser.py::test_transform_connection_string[user:password@host-user:password@host]": 0.001254918000086036, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[-]": 0.0011717519998910575, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/\\ndocu\\nments/file.txt-/home/user/\\\\ndocu\\\\nments/file.txt]": 0.0012267550000615302, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/docu\\n\\nments/file.txt-/home/user/docu\\\\n\\\\nments/file.txt]": 0.0011875730001520424, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/docu\\nments/file.txt-/home/user/docu\\\\nments/file.txt]": 0.001189137000210394, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/documents/\\n-/home/user/documents/\\\\n]": 0.0012167580002824252, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/documents/file.txt-/home/user/documents/file.txt]": 0.0012106149999908666, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[/home/user/my-\\ndocs/special_file!.pdf-/home/user/my-\\\\ndocs/special_file!.pdf]": 0.001189626000041244, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:/Users\\\\Documents/file.txt-C:/Users\\\\Documents/file.txt]": 0.0011827330001779046, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\Documents\\\\-C:\\\\Users\\\\Documents\\\\]": 0.0012207140000555228, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\Documents\\\\file.txt-C:\\\\Users\\\\Documents\\\\file.txt]": 0.001196627999888733, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[C:\\\\Users\\\\\\nDocuments\\\\file.txt-C:\\\\Users\\\\\\\\nDocuments\\\\file.txt]": 0.0012148339999384916, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\\\\\\\server\\\\share\\\\file.txt-\\\\\\\\server\\\\share\\\\file.txt]": 0.001179557999876124, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\n/home/user/documents/-\\\\n/home/user/documents/]": 0.0012110570003187604, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path[\\n\\n\\n-\\\\n\\\\n\\\\n]": 0.0012020110000321438, + "src/backend/tests/unit/utils/test_format_directory_path.py::test_format_directory_path_type": 0.001142286999765929, "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_convert_image_to_base64_directory": 0.002373834024183452, "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_convert_image_to_base64_empty_path": 0.0015134999412111938, "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_convert_image_to_base64_nonexistent_file": 0.0014794580056332052, @@ -1327,74 +1347,74 @@ "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_create_data_url_success": 0.0014539569965563715, "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_create_data_url_unrecognized_extension": 0.0038709990330971777, "src/backend/tests/unit/utils/test_image_utils.py::TestImageUtils::test_create_data_url_with_custom_mime": 0.0027264999807812274, - "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_directory": 0.001547240999798305, - "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_empty_path": 0.001133317000039824, - "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_nonexistent_file": 0.0011408210000354302, - "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_success": 0.0017568729997492483, - "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_invalid_file": 0.001109812000322563, - "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_success": 0.0017036839997217612, - "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_unrecognized_extension": 0.0016291950000777433, - "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_with_custom_mime": 0.0016671850000875565, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[-]": 0.001109012999904735, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/\\ndocu\\nments/file.txt-/home/user/\\\\ndocu\\\\nments/file.txt]": 0.0011091829999259062, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/docu\\n\\nments/file.txt-/home/user/docu\\\\n\\\\nments/file.txt]": 0.0010858890000235988, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/docu\\nments/file.txt-/home/user/docu\\\\nments/file.txt]": 0.0011556289998679858, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/documents/\\n-/home/user/documents/\\\\n]": 0.0011080209999363433, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/documents/file.txt-/home/user/documents/file.txt]": 0.0011067279997405421, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/my-\\ndocs/special_file!.pdf-/home/user/my-\\\\ndocs/special_file!.pdf]": 0.0010841559997061267, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[C:\\\\Users\\\\\\nDocuments\\\\file.txt-C:\\\\Users\\\\\\\\nDocuments\\\\file.txt]": 0.001098282000157269, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[\\n/home/user/documents/-\\\\n/home/user/documents/]": 0.0011237180001444358, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[\\n\\n\\n-\\\\n\\\\n\\\\n]": 0.0011145930000111548, - "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path_type": 0.0010686360001272988, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_negative_max_length": 0.0010425580003357027, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[-5-]": 0.0011407409999719675, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[12345-3-12345]": 0.0011373030001777806, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[3.141592653589793-4-3.141592653589793]": 0.0011340789997120737, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[None-5-None]": 0.0011581230000956566, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[True-2-True]": 0.0011337679998177919, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[\\u3053\\u3093\\u306b\\u3061\\u306f-3-\\u3053\\u3093\\u306b...]": 0.0011404419999507809, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[a-1-a]": 0.0011823290003576403, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10-aaaaaaaaaa...]": 0.0011462109998774395, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[exact-5-exact]": 0.0011169360002440953, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[long string-7-long st...]": 0.001139818999945419, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[short string-20-short string]": 0.00115265200020076, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_none_max_length": 0.0010567740000624326, - "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_zero_max_length": 0.0010092360003000067, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data0-10-expected0]": 0.0011416529998768965, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data1-5-expected1]": 0.0011425749999034451, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data2-7-expected2]": 0.0011654769998585834, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data3-8-expected3]": 0.001133978999860119, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data4-10-expected4]": 0.0011704270000336692, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data5-10-expected5]": 0.0011406109999825276, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data6-10-expected6]": 0.0011396590000458673, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data7-5-expected7]": 0.0012421910000739445, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data8-3-expected8]": 0.0011409309997816308, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data9-10-expected9]": 0.0016173419999176986, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_default_max_length": 0.0010149350002848223, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_in_place_modification": 0.0010271809999267134, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_invalid_input": 0.0010884630000873585, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_negative_max_length": 0.0010212689999207214, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_no_modification": 0.0010287029999744846, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_small_max_length": 0.0010541299998294562, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_type_preservation": 0.0010740759998952853, - "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_zero_max_length": 0.0010641790001955087, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[ invalid -False]": 0.001163863999863679, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[-False]": 0.0011554879999948753, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[None-False]": 0.0011319640000237996, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[invalid://:@/test-False]": 0.02603038100005506, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[invalid://database-False]": 0.02619595099986327, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql+mysqldb://scott:tiger@localhost/foo-True]": 0.00127385900009358, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql+pymysql://scott:tiger@localhost/foo-True]": 0.0011624219998793706, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql://user:pass@localhost/dbname-True]": 0.04882953500009535, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[not_a_url-False]": 0.0011274949999915407, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle+cx_oracle://scott:tiger@tnsalias-True]": 0.00124299100002645, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle+oracledb://scott:tiger@127.0.0.1:1521/?service_name=freepdb1-True]": 0.0011918760001208284, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle://scott:tiger@127.0.0.1:1521/?service_name=freepdb1-True]": 0.04323254800010545, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql+pg8000://dbuser:kx%40jj5%2Fg@pghost10/appdb-True]": 0.0013502819999757776, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql+psycopg2://scott:tiger@localhost:5432/mydatabase-True]": 0.0011412319997816667, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql://user:pass@localhost/dbname-True]": 0.0011373450001883612, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite+aiosqlite:////var/folders/test.db-True]": 0.001145410000162883, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:////var/folders/test.db-True]": 0.0011258150000230671, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:///:memory:-True]": 0.001124810999726833, - "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:///test.db-True]": 0.0011541660001057608 + "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_directory": 0.0016503099998317339, + "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_empty_path": 0.0012534859999959735, + "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_nonexistent_file": 0.0012370550000468938, + "src/backend/tests/unit/utils/test_image_utils.py::test_convert_image_to_base64_success": 0.0017910420001499006, + "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_invalid_file": 0.0012398290000419365, + "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_success": 0.0017459270000017568, + "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_unrecognized_extension": 0.0017000820000703243, + "src/backend/tests/unit/utils/test_image_utils.py::test_create_data_url_with_custom_mime": 0.001741248000143969, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[-]": 0.001200576999963232, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/\\ndocu\\nments/file.txt-/home/user/\\\\ndocu\\\\nments/file.txt]": 0.0012150139996265352, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/docu\\n\\nments/file.txt-/home/user/docu\\\\n\\\\nments/file.txt]": 0.0012104659999749856, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/docu\\nments/file.txt-/home/user/docu\\\\nments/file.txt]": 0.0012050249999902007, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/documents/\\n-/home/user/documents/\\\\n]": 0.001193664000084027, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/documents/file.txt-/home/user/documents/file.txt]": 0.0012290390000089246, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[/home/user/my-\\ndocs/special_file!.pdf-/home/user/my-\\\\ndocs/special_file!.pdf]": 0.0011726739996902324, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[C:\\\\Users\\\\\\nDocuments\\\\file.txt-C:\\\\Users\\\\\\\\nDocuments\\\\file.txt]": 0.0012367660001473268, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[\\n/home/user/documents/-\\\\n/home/user/documents/]": 0.001180188000034832, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path[\\n\\n\\n-\\\\n\\\\n\\\\n]": 0.001229340999998385, + "src/backend/tests/unit/utils/test_rewrite_file_path.py::test_format_directory_path_type": 0.0011182630000803329, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_negative_max_length": 0.001383439000164799, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[-5-]": 0.0012223280002672254, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[12345-3-12345]": 0.001227426000241394, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[3.141592653589793-4-3.141592653589793]": 0.0012422740003330546, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[None-5-None]": 0.0011927030000151717, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[True-2-True]": 0.0012142620000759052, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[\\u3053\\u3093\\u306b\\u3061\\u306f-3-\\u3053\\u3093\\u306b...]": 0.0012249029998656624, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[a-1-a]": 0.0012400099999467784, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-10-aaaaaaaaaa...]": 0.001237466000020504, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[exact-5-exact]": 0.0012603900001977308, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[long string-7-long st...]": 0.0012239709999448678, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_non_dict_list[short string-20-short string]": 0.0012480450000111887, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_none_max_length": 0.0013924649999808025, + "src/backend/tests/unit/utils/test_truncate_long_strings.py::test_truncate_long_strings_zero_max_length": 0.0013855239999429614, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data0-10-expected0]": 0.0013215030000992556, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data1-5-expected1]": 0.0011592700000164768, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data2-7-expected2]": 0.0011548410000159492, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data3-8-expected3]": 0.0011763110001083987, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data4-10-expected4]": 0.0011354340001616947, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data5-10-expected5]": 0.0011663440000120318, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data6-10-expected6]": 0.001153860000158602, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data7-5-expected7]": 0.0011332709996167978, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data8-3-expected8]": 0.001144200999988243, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings[input_data9-10-expected9]": 0.0016243999998550862, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_default_max_length": 0.0010391640000761981, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_in_place_modification": 0.0014160789999095869, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_invalid_input": 0.0013514390000182175, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_negative_max_length": 0.00113637699996616, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_no_modification": 0.0011450320000676584, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_small_max_length": 0.0011344240001562866, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_type_preservation": 0.001112413000100787, + "src/backend/tests/unit/utils/test_truncate_long_strings_on_objects.py::test_truncate_long_strings_zero_max_length": 0.0011143860001538997, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[ invalid -False]": 0.0012265069999557454, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[-False]": 0.0013811349999741651, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[None-False]": 0.0011981120001109957, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[invalid://:@/test-False]": 0.02587086000016825, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[invalid://database-False]": 0.026087614999823927, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql+mysqldb://scott:tiger@localhost/foo-True]": 0.0014368709998962004, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql+pymysql://scott:tiger@localhost/foo-True]": 0.0012870189996192494, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[mysql://user:pass@localhost/dbname-True]": 0.049853656999857776, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[not_a_url-False]": 0.0011952770000789315, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle+cx_oracle://scott:tiger@tnsalias-True]": 0.001311123000277803, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle+oracledb://scott:tiger@127.0.0.1:1521/?service_name=freepdb1-True]": 0.0012772799996128015, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[oracle://scott:tiger@127.0.0.1:1521/?service_name=freepdb1-True]": 0.04352316700033043, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql+pg8000://dbuser:kx%40jj5%2Fg@pghost10/appdb-True]": 0.0014698420000058832, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql+psycopg2://scott:tiger@localhost:5432/mydatabase-True]": 0.0012859060000209865, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[postgresql://user:pass@localhost/dbname-True]": 0.001253937000001315, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite+aiosqlite:////var/folders/test.db-True]": 0.0012138129998220393, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:////var/folders/test.db-True]": 0.0012154950002241094, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:///:memory:-True]": 0.0012070799998582515, + "src/backend/tests/unit/utils/test_util_strings.py::test_is_valid_database_url[sqlite:///test.db-True]": 0.001276849000078073 } \ No newline at end of file