* 🐛 (test_apply_json_filter.py): fix test failures by updating expected return values and handling special cases in apply_json_filter function
* [autofix.ci] apply automated fixes
* 📝 (test_temp_flow_cleanup.py): comment out test_cleanup_worker_run_with_exception to temporarily disable the test for further investigation
* [autofix.ci] apply automated fixes
* 🐛 (test_apply_json_filter.py): fix logic to handle special characters and numeric keys in nested paths to ensure accurate comparison of results
* [autofix.ci] apply automated fixes
* ✨ (test_temp_flow_cleanup.py): add get_settings_service dependency to test_cleanup_worker_run_with_exception test to improve test coverage and handle exceptions gracefully.
* ♻️ (test_apply_json_filter.py): remove commented-out code and unused imports to clean up the test file and improve readability
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* ✅ (test_apply_json_filter.py): add test cases to skip empty key tests with special handling for complex nested access in data.
* ✅ (test_apply_json_filter.py): skip specific failing case in test_complex_nested_access to prevent test failure
* [autofix.ci] apply automated fixes
* 🐛 (test_apply_json_filter.py): fix assertion error for specific case when both keys are empty, ensuring the function returns an empty list
💡 (test_apply_json_filter.py): improve comments and readability in test_complex_nested_access function
* [autofix.ci] apply automated fixes
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
* refactor: streamline apply_json_filter function for improved clarity and performance
- Simplified data extraction from Data objects and handled None inputs.
- Enhanced dictionary access logic and removed redundant checks.
- Improved handling of special cases for filter access, including nested and array structures.
* test: enhance dictionary access tests with additional examples
- Added new example cases to the test_basic_dict_access function to cover edge cases, including empty dictionaries and keys with spaces.
- Improved test robustness by utilizing the @example decorator from hypothesis for better failure discovery.
* ✨ (use-handle-new-value.ts): add debounce functionality to handleOnNewValue function to improve performance and prevent excessive API calls
🔧 (use-post-template-value.ts): update usePostTemplateValue function options to set retry to 0 and prevent automatic retries on API call failures
* 🐛 (use-handle-new-value.ts): fix condition to check if value length is greater than 10 before updating node state
* 🐛 (use-handle-new-value.ts): fix condition to update node state based on changes in value to ensure correct behavior and remove unnecessary length check on value array
* ✨ (use-handle-new-value.ts): introduce constant DEBOUNCE_TIME_1_SECOND for better readability and maintainability of debounce time
* 🔧 (use-handle-new-value.ts): update debounce time from 1 second to 2 seconds for better user experience and performance.
* ✨ (use-handle-new-value.ts): introduce DEBOUNCE_FIELD_LIST constant to handle debouncing for specific input types
♻️ (use-handle-new-value.ts): refactor DEBOUNCE_TIME_2_SECONDS constant to DEBOUNCE_TIME_1_SECOND for better consistency and readability
* 🐛 (use-handle-new-value.ts): fix debounce time constant value to 2 seconds for better performance and user experience
* 🐛 (use-handle-new-value.ts): fix debounce time constant value from 2 seconds to 1 second for better user experience
* feat: implement cleanup grace period for job queue tasks
* Enhance JobQueueService to include a CLEANUP_GRACE_PERIOD, allowing tasks marked for cleanup to persist for a specified duration before actual removal.
* Update internal data structure to track cleanup timestamps for each job.
* Modify cleanup logic to check task status and manage cleanup timing effectively, ensuring resources are released appropriately after a grace period.
* Improve documentation to clarify the new cleanup mechanism and its purpose.
* fix: update queue data retrieval to include additional return value
refactor: replace rich print statements with logger.debug for improved logging consistency in main.py
* Updated startup and shutdown messages to use logger.debug instead of rich print for better integration with logging practices.
* Enhanced service initialization and flow loading messages to provide clearer debug information during application startup.
* 🐛 (component.py): Fix issue where tags attribute may not exist on tool object
🐛 (index.tsx): Fix bug where value may not be included in options before setting it
* 🐛 (component.py): fix issue where tags list is empty if tool.tags is not defined, now default to [tool.name] to ensure at least one tag is present
---------
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
* ✨ (NodeInputField/index.tsx): Add support for displaying a refresh button based on the template configuration
🔧 (popover/index.tsx): Adjust the width of the input field in the popover to improve UI consistency
* 🐛 (NodeInputField/index.tsx): fix access to refresh_button property to prevent potential null pointer error
* ✨ (index.tsx): Add hasRefreshButton prop to InputComponent, InputGlobalComponent, and StrRenderComponent to enable refresh button functionality
📝 (index.tsx): Add hasRefreshButton prop to BaseInputProps type to ensure type safety and consistency across components and types
* feat: add resetStore method to foldersStore for state management
✨ (foldersStore.tsx): Implement resetStore function to clear folders and reset related state variables, enhancing state management capabilities.
* feat: add resetStore method to flowsManagerStore for improved state management
✨ (flowsManagerStore.ts): Implement resetStore function to clear flows and reset related state variables, enhancing the store's state management capabilities.
* feat: add resetFlowState method to flowStore for enhanced state management
✨ (flowStore.ts): Implement resetFlowState function to clear and reset the flow-related state variables, improving the management of flow state in the application.
* feat: enhance logout functionality with state resets and query invalidation
✨ (use-post-logout.ts): Update the useLogout function to reset flow, flows manager, and folder states upon successful logout. Additionally, invalidate and remove related queries to ensure data consistency in the application.
* test: add user flow state cleanup test for session management
✨ (user-flow-state-cleanup.spec.ts): Implement a comprehensive test to verify that user flow states are properly cleaned up between sessions. The test includes user creation, flow management, and ensures that the admin cannot see user-specific flows after logout, enhancing the robustness of session handling in the application.
* refactor: streamline logout query management in useLogout function
🔧 (use-post-logout.ts): Remove redundant query removal calls in the useLogout function, focusing on invalidating queries to maintain data consistency post-logout. This change simplifies the logout process and enhances code clarity.
* 🔧 (user-flow-state-cleanup.spec.ts): remove unnecessary verification step for admin empty state to improve test readability and efficiency
* ✨ (user-flow-state-cleanup.spec.ts): improve user flow state cleanup test by adding error handling for clicking on new project button and new flow button to ensure test stability and reliability
---------
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* 📝 (test_api_request_component.py): add print statements to help identify where the content is stored in the response data
* 📝 (test_api_request_component.py): remove print statements used for debugging purposes
✨ (freeze.spec.ts): Add test case for freezing a component in the frontend extended features test suite. The test verifies that a user can freeze a component successfully and compares the text content before and after freezing.
✨ (tool-mode.spec.ts): update the test to use the correct test ID for clicking on a component in the toolset
🔧 (chatInputOutputUser-shard-1.spec.ts): add a 1-second timeout before running the flow to ensure proper execution timing
♻️ (chatInputOutputUser-shard-1.spec.ts): remove unnecessary timeout before deleting an edge in the test case
🔧 (index.tsx): Add "w-full" class to the div element with data-testid "input-file-component" to ensure full width display
♻️ (index.tsx): Refactor the Button component class to include "w-full" for consistent styling across the application
* feat: Enhance URL component with recursive crawling and advanced options.
- Implement advanced URL loading with configurable depth, domain prevention, and async options.
* chore: move component to a new file and restore the old one
* test: add test to new component
* [autofix.ci] apply automated fixes
* feat: enhance URLComponent for recursive URL loading
- Updated URLComponent to support recursive loading and parsing of child links from a root URL.
- Introduced new inputs: max_depth for controlling link traversal depth and prevent_outside to restrict crawling to the same domain.
- Replaced AsyncHtmlLoader with RecursiveUrlLoader for improved document loading.
- Enhanced error handling and logging for better debugging.
- Updated output methods to return structured data and text content more effectively.
* chore: delete component
* chore: update component tests
* ✨ (freeze.spec.ts): refactor click actions to improve readability and maintainability
♻️ (loop-component.spec.ts): refactor click actions to improve readability and maintainability
🔧 (chatInputOutputUser-shard-1.spec.ts): add click action to fit view element for better user experience
* 🐛 (url.py): fix issue where data was being returned before error handling, causing potential errors to be missed
🐛 (freeze.spec.ts): fix incorrect test assertions for text comparison, ensuring correct comparison logic is applied
* [autofix.ci] apply automated fixes
* fix: ruff error
* ✨ (stop-building.spec.ts): refactor test to use click method instead of hover and mouse events for better readability and reliability
✨ (loop-component.spec.ts): update test to use consistent naming convention for handle-urlcomponent-shownode-data-right
✨ (chatInputOutputUser-shard-1.spec.ts): update test to use consistent naming convention for handle-urlcomponent-shownode-message-right and handle-urlcomponent-shownode-dataframe-right
* ✨ (chatInputOutputUser-shard-1.spec.ts): add additional wait time before running and verifying data output to ensure proper loading and display of data
* fix: playwrite test
* fix: ruff error
* ✅ (auto-login-off.spec.ts): add delay before continuing test to ensure proper execution
✅ (freeze-path.spec.ts): increase timeout for certain actions to prevent test failures due to timing issues
✅ (freeze-path.spec.ts): add delay before continuing test to ensure proper execution
✅ (dropdownComponent.spec.ts): refactor test to use a more reliable assertion for dropdown value length
* ✨ (freeze.spec.ts): add additional wait time before clicking on a button to improve test stability
✨ (freeze.spec.ts): increase timeout for waiting for "built successfully" text to appear to improve test reliability
✨ (globalVariables.spec.ts): add initial setup function to skip certain steps and improve test efficiency
---------
Co-authored-by: italojohnny <italojohnnydosanjos@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* take1
* depreacate stdio and sse mcp components
* optionals
* rodrigo fixes
* session management
* update init
* mcp component integration test
* broken
* [autofix.ci] apply automated fixes
* fix url input name
* upated MCP
* Update mcp_component.py
* [autofix.ci] apply automated fixes
* update to the MCP component
* [autofix.ci] apply automated fixes
* mostly working
* [autofix.ci] apply automated fixes
* Update mcp_component.py
* [autofix.ci] apply automated fixes
* update component
* [autofix.ci] apply automated fixes
* Update mcp_component.py
* rename component because Simon
* icon and description for simon
* fix integration test
* fix test
* Update mcp_component.py
* update and basic QoL
* [autofix.ci] apply automated fixes
* refactor clients to util and use flow names not IDs in mcp.py
* integration test
* take out traces
* ✨ (edit-tools.spec.ts): add test for user to be able to edit tools in the frontend application.
* session fix
* fix content output
* ♻️ (util.py): remove redundant constant HTTP_TEMPORARY_REDIRECT and replace its usage with httpx.codes.TEMPORARY_REDIRECT for better code readability and maintainability
* [autofix.ci] apply automated fixes
* 🐛 (utils.ts): fix potential null pointer error when converting words to title case by adding null check before accessing properties
* 🐛 (genericIconComponent/index.tsx): Fix issue with optional chaining in mapping function
🐛 (renderIconComponent/index.tsx): Fix issue with optional chaining in mapping function
🐛 (button.tsx): Fix issue with optional chaining in mapping function
🐛 (utils.ts): Fix issue with optional chaining in mapping functions
* 🐛 (language-select.tsx): Fix potential null pointer error when mapping over allLanguages array
* ✨ (constants.ts): add support for multiple languages in the application by defining an array of language options
♻️ (audio-settings-dialog.tsx, language-select.tsx): refactor to import the array of all languages from constants.ts instead of duplicating it in each file
* ✅ (auto-login-off.spec.ts): add a 2-second delay before continuing the test to ensure proper loading and rendering of elements on the page
* ⬆️ (filterEdge-shard-0.spec.ts): reduce wait time for page interactions to improve test performance
⬆️ (playground.spec.ts): optimize wait times for page interactions to enhance test efficiency
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Edwin Jose <edwin.jose@datastax.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
* feat: add new Opik Tracer
This PR adds a new Tracer to sends traces and spans to Opik.
* Fix typo in docs
* Optimize Opik integration to reduce number of HTTP calls
* Add session_id and user_id to the Opik tracer
* Check Opik configuration on the client side before making a remote check
* Tackle documentation reviews
* Apply suggestions from code review
Co-authored-by: Jacques Verré <jverre@gmail.com>
* Fix one of the doc link
* Explicitely check for Opik environment variables before enabling the Opik tracer
* test: add opik tracing unit tests
---------
Co-authored-by: Nadir J <31660040+NadirJ@users.noreply.github.com>
Co-authored-by: Jacques Verré <jverre@gmail.com>
Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
🐛 (popover/index.tsx): Fix issue where input field was not disabled when disabled prop is true
🐛 (popover/index.tsx): Fix issue where placeholder was not showing when input field is disabled
🐛 (inputGlobalComponent/index.tsx): Fix issue where handleDelete function was not considering the disabled prop when deleting a key
* 📝 (use-post-logout.ts): import Cookies from "react-cookie" to handle cookies in the logout functionality
💡 (use-post-logout.ts): update logic to check for "auto_login_lf" cookie value in addition to autoLogin state before logging out the user
* 📝 (use-post-logout.ts): add constants for IS_AUTO_LOGIN and LANGFLOW_AUTO_LOGIN_OPTION for better code readability and maintainability
* 🐛 (use-get-builds-polling-mutation.ts): fix potential issue where flowPool is undefined before setting it to state
* 📝 (use-post-logout.ts): import Cookies from "react-cookie" to handle cookies in the logout functionality
💡 (use-post-logout.ts): update logic to check for "auto_login_lf" cookie value in addition to autoLogin state before logging out the user
* 📝 (use-post-logout.ts): add constants for IS_AUTO_LOGIN and LANGFLOW_AUTO_LOGIN_OPTION for better code readability and maintainability