Commit Graph

17098 Commits

Author SHA1 Message Date
b3df3a7c35 feat: Add global variable support for MCP server headers (#11300)
* feat: Add global variable support for MCP server headers

- Add IOKeyPairInputWithVariables component for header inputs with global variable dropdown
- Integrate global variable selection in MCP Server modal
- Add variable resolution in MCP server headers (_resolve_global_variables_in_headers)
- Add variable loading and decryption in MCP API endpoint and component
- Add unit tests for variable resolution utility function

* test: Add comprehensive unit tests for IOKeyPairInputWithVariables component

- Add 15 test cases covering rendering, user interactions, and edge cases
- Test global variable dropdown functionality and selection
- Test row addition/removal and input validation
- Test duplicate key detection and error handling
- Test initialization from existing values with variable badges
- Addresses CodeRabbit review feedback for frontend test coverage

* [autofix.ci] apply automated fixes

* test: fix frontend Jest tests for IOKeyPairInputWithVariables component

- Added proper mocks for IconComponent, InputComponent, and Input
- Used explicit TypeScript types instead of 'any' for mock props
- Fixed test assertions to match actual component structure (Type key.../Type a value... placeholders)
- All 8 tests now pass without console warnings
- Tests cover: rendering, onChange callbacks, add/delete buttons, global variables toggle

* fix: restore session_scope import to module level for test mocking

The session_scope import was moved inside _process_headers method, which broke
unit tests that mock it at the module level. Restored it to module-level imports
with noqa comment to prevent ruff from removing it, and removed the duplicate
import from inside the method.

Fixes: test_database_config_used_when_no_value_config

* chore: trigger CI rebuild to test for flaky Playwright test

* Update component index

* chore: update Nvidia Remix starter project with session_scope import fix

* perf(mcp): optimize global variable loading to prevent timeouts

Only load global variables from database when headers are actually present
in the MCP server config. This avoids unnecessary database queries for
servers without headers, significantly improving performance and preventing
timeouts in tests that repeatedly connect to MCP servers.

The optimization adds a conditional check before the database query:
- has_headers = server_config.get('headers') and len(server_config.get('headers', {})) > 0
- Only queries database if has_headers is True

This resolves the cumulative delay issue where each MCP connection retry
was performing an expensive database query even when no headers were configured.

* [autofix.ci] apply automated fixes

* fix(test): update Playwright test for new header input component structure

Update MCP server Playwright test to work with the new KeyPairInputWithVariables
component that uses InputComponent with global variable support for header values.

Changes:
- Use getByPlaceholder() instead of getByTestId() for header value fields
- Header value fields now use InputComponent which doesn't expose data-testid

The new component structure wraps the value input in InputComponent to provide
global variable dropdown functionality, requiring a different selector strategy.

* chore: update Nvidia Remix starter project

Update starter project file that was modified by the automated build pipeline.

* Update component index

* fix: replace jose with jwt (#11285)

* replace jose with jwt

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* pin to lower pyjwt

* pyjwt version

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* Update component index

* Update component index

* [autofix.ci] apply automated fixes

* Update component index

* chore: trigger CI rebuild

* [autofix.ci] apply automated fixes

* refactor: remove langflow imports from lfx MCP component

Separate lfx from langflow by using the service layer pattern:

Changes:
1. Extended VariableServiceProtocol in lfx with get_all_decrypted_variables()
2. Implemented the method in langflow's DatabaseVariableService
3. Updated MCP component to use get_variable_service() instead of direct imports
4. Added comprehensive unit tests for the new service method

Benefits:
- Clean separation between lfx and langflow packages
- Uses existing service architecture pattern
- Maintains performance optimization (only loads variables when needed)
- No breaking changes to functionality

Removed direct langflow imports from mcp_component.py (auth utils, Variable model, settings service, and sqlmodel select).

Files modified:
- src/lfx/src/lfx/services/interfaces.py
- src/backend/base/langflow/services/variable/service.py
- src/lfx/src/lfx/components/models_and_agents/mcp_component.py
- src/backend/tests/unit/services/variable/test_service.py (added 3 new tests)

* fix: Handle global variables correctly for components

- Fix UUID type conversion in variable service to prevent SQLAlchemy errors
- Add type-based decryption: only decrypt CREDENTIAL variables, not GENERIC
- Improve error handling in decrypt_api_key to prevent crashes on second attempt
- Resolves 'str object has no attribute hex' error when loading global variables

This fixes issues with watsonx.ai and MCP components when using global variables.

* [autofix.ci] apply automated fixes

* Update component index

* Consider other failed decryption cases

* fix(variable-service): Fix UUID conversion and type-based variable decryption

- Convert string to UUID in get_all_decrypted_variables() to prevent SQLAlchemy errors
- Implement type-based decryption: only decrypt CREDENTIAL variables, not GENERIC
- Simplify get_all() to return stored values directly for both variable types
- Fixes watsonx component update error (400 status) when editing values

Resolves issue where editing watsonx.ai component values caused:
'Error while updating the Component' with 400 client error

* [autofix.ci] apply automated fixes

* chore: update starter project files

* fix: remove explicit value assignment to allow credential redaction

* fix: handle credential redaction in frontend and fix Playwright test hangs

- Update GlobalVariableModal to handle None credential values
- Allow credential updates without re-entering value
- Fix userSettings test by using dispatchEvent for clicks
- Add waitForTimeout after clicks to prevent hangs
- Use .first() for Fields selectors to avoid strict mode violations

* [autofix.ci] apply automated fixes

* Update component index

* [autofix.ci] apply automated fixes

* fix: improve error handling and logging for variable decryption

Address code review feedback:

1. Increase log level from debug to warning when decryption fails in
   auth/utils.py. Returning empty string silently could cause issues,
   so warning level makes failures more visible.

2. Follow established pattern in mcp.py for variable decryption:
   - Only decrypt CREDENTIAL type variables (encrypted in storage)
   - Use GENERIC type variables as-is (stored as plaintext)
   - Change from silent fallback (adebug) to explicit error (aerror)
   - This matches the pattern in get_all_decrypted_variables()

These changes make error handling more explicit and consistent across
the codebase.

* Update component index

* Update component index

* [autofix.ci] apply automated fixes

* chore: trigger CI rebuild

* [autofix.ci] apply automated fixes

* Updates to ensure backwards compatibility for encrypted generic variables

* Skip failed decryption

* Fix test

* ruff

* update starter projects

* ruff

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* comp index

* [autofix.ci] apply automated fixes

* remove unnecessary step in pandas series conversion

---------

Co-authored-by: Steve Haertel <shaertel@ca.ibm.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com>
Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
2026-01-20 19:03:30 +00:00
50bab0a4e7 feat: introduce component hash history (#11311)
* Remove hash history from index

* first draft of adding component id and stable hash history

* Simplify - use version -> hash mapping

* Add unit tests and simple safeguards for stable vs nightly

* Add uniqueness check for comp id in comp index build

* Remove component id - use name as unique id

* Use component name as unique identifier - fix tests

* regenerate hash history; add script to makefile

* Remove component id

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* ruff

* comp index

* ruff

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* update index

* ruff

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-20 14:00:54 +00:00
5497f93bb5 fix: add debounce functionality to search input in FlowSidebarComponent (#11357)
feat: add debounce functionality to search input in FlowSidebarComponent
2026-01-19 19:27:13 +00:00
ac273926e1 refactor: Replace aiofile with aiofiles for async file operations (#11351)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-19 09:29:17 -03:00
d62a9a6720 test: Standardize service mocking with shared pytest fixtures for reliable test isolation (#11350) 2026-01-19 08:08:38 -03:00
2f274012e1 feat: Add pluggable services architecture in lfx and comprehensive testing (#10111)
* feat: Introduce service registration decorator and enhance ServiceManager for pluggable service discovery

- Added `register_service` decorator to allow services to self-register with the ServiceManager.
- Enhanced `ServiceManager` to support multiple service discovery mechanisms, including decorator-based registration, config files, and entry points.
- Implemented methods for direct service class registration and plugin discovery from various sources, improving flexibility and extensibility of service management.

* feat: Implement VariableService for managing environment variables

- Introduced VariableService class to handle environment variables with in-memory caching.
- Added methods for getting, setting, deleting, and listing variables.
- Included logging for service initialization and variable operations.
- Created an __init__.py file to expose VariableService in the package namespace.

* feat: Enhance LocalStorageService with Service integration and async teardown

- Updated LocalStorageService to inherit from both StorageService and Service for improved functionality.
- Added a name attribute for service identification.
- Implemented an async teardown method for future extensibility, even though no cleanup is currently needed.
- Refactored the constructor to ensure proper initialization of both parent classes.

* feat: Implement telemetry service with abstract base class and minimal logging functionality

- Added `BaseTelemetryService` as an abstract base class defining the interface for telemetry services.
- Introduced `TelemetryService`, a lightweight implementation that logs telemetry events without sending data.
- Created `__init__.py` to expose the telemetry service in the package namespace.
- Ensured robust async methods for logging various telemetry events and handling exceptions.

* feat: Introduce BaseTracingService and implement minimal TracingService

- Added `BaseTracingService` as an abstract base class defining the interface for tracing services.
- Implemented `TracingService`, a lightweight version that logs trace events without external integrations.
- Included async methods for starting and ending traces, tracing components, and managing logs and outputs.
- Enhanced documentation for clarity on method usage and parameters.

* feat: Add unit tests for service registration decorators

- Introduced a new test suite for validating the functionality of the @register_service decorator.
- Implemented tests for various service types including LocalStorageService, TelemetryService, and TracingService.
- Verified behavior for service registration with and without overrides, ensuring correct service management.
- Included tests for custom service implementations and preservation of class functionality.
- Enhanced overall test coverage for the service registration mechanism.

* feat: Add comprehensive unit and integration tests for ServiceManager

- Introduced a suite of unit tests covering edge cases for service registration, lifecycle management, and dependency resolution.
- Implemented integration tests to validate service loading from configuration files and environment variables.
- Enhanced test coverage for various service types including LocalStorageService, TelemetryService, and VariableService.
- Verified behavior for service registration with and without overrides, ensuring correct service management.
- Ensured robust handling of error conditions and edge cases in service creation and configuration parsing.

* feat: Add unit and integration tests for minimal service implementations

- Introduced comprehensive unit tests for LocalStorageService, TelemetryService, TracingService, and VariableService.
- Implemented integration tests to validate the interaction between minimal services.
- Ensured robust coverage for file operations, service readiness, and exception handling.
- Enhanced documentation within tests for clarity on functionality and expected behavior.

* docs: Add detailed documentation for pluggable services architecture and usage

* feat: Add example configuration file for Langflow services

* docs: Update PLUGGABLE_SERVICES.md to enhance architecture benefits section

- Revised the documentation to highlight the advantages of the pluggable service system.
- Replaced the migration guide with a detailed overview of features such as automatic discovery, lazy instantiation, dependency injection, and lifecycle management.
- Clarified examples of service registration and improved overall documentation for better understanding.

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* test(services): improve variable service teardown test with public API assertions

* docs(pluggable-service-layer): add docstrings for service manager and implementations

* Update component index

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-16 20:09:07 +00:00
6b4f946818 feat: Model Provider Input Patches for Design (#11218)
* feat: add IBM icon and reorganize IBM WatsonX icon structure

- Add new IBM logo icon (IBM.jsx, ibm.svg) for generic IBM provider branding
- Reorganize icon directory structure: move IBMWatsonx to IBM parent folder with watsonx subfolder
- Export both WatsonxAiIcon and IBMIcon from consolidated IBM index
- Update icon mapping in use-get-model-providers to support both 'IBM WatsonX' and 'IBM watsonx.ai' provider names
- Standardize quote style from double to single quotes across use-get-model-providers.

* added doc link support

* refactor: standardize IBM WatsonX icon references and quote style

- Update all WatsonX model metadata to use generic "IBM" icon instead of "WatsonxAI"
- Standardize quote style from double to single quotes in ModelProvidersPage imports

* refactor: standardize quote style and update LLM section label in ModelSelection

- Change all double quotes to single quotes in ModelSelection component and tests
- Update "LLM Models" label to "Language Models" for consistency
- Standardize arrow function formatting across component

* fixes the model provider streching the page

* fixes border not being fully hidden

* updated api doc url

* fix: improve model field default value logic and provider field visibility

- Update default value setting logic to check current model value from build_config instead of field_value parameter
- Only set default when field_name is None (initial load) or when model field is being set and is empty
- Fix provider-specific field visibility to use current model value from build_config when field_name is not model
- Ensure provider fields are shown/hidden correctly regardless of which field triggere

* fix: improve model validation and refresh logic in model provider modal

- Add client-side filtering of disabled models in ModelInputComponent using enabled models data
- Implement validateModelValue function to ensure selected models are available and valid
- Move refreshAllModelInputs call from ModelProvidersContent cleanup to ModelProviderModal handleClose with 1000ms delay to ensure database transactions complete
- Remove race condition between cleanup effect and debounced mutateTemplate by not

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* revery lru cache

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* updated component_index

* updated templates

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* refactor: convert use-refresh-model-inputs and api types to single quotes and add ModelOptionType

- Convert double quotes to single quotes throughout use-refresh-model-inputs.ts and api/index.ts
- Add ModelOptionType interface with name, id, icon, provider, and metadata properties
- Update validateModelValue to use typed ModelOptionType instead of any for option filtering

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fixed tests

* removed sticky property

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-16 18:54:17 +00:00
0689810bf3 fix: Initialize modal state from initialData and improve test stability (#11328) 2026-01-16 10:29:15 -03:00
e970dcef94 fix(tests): Update copy-code-button click to target first element (#11327) 2026-01-16 09:04:07 -03:00
c57e52798d docs: upgrade to node LTS version including security fix (#11315)
upgrade-node-lts-verison
2026-01-15 19:35:25 +00:00
64054fcb2f docs: langflow does not support asyncpg driver (#10500)
* add-troubleshooting-and-note

* admonition-type
2026-01-15 17:53:41 +00:00
e269a6830d docs: troubleshooting for signin error message (#11268)
* troubleshooting

* clarify-superuser-is-active-behavior

* clarify-starting-server

* fix-broken-link

* typo

* peer-review

* Apply suggestions from code review

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* clarify-send-creds-to-user

---------

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
2026-01-15 17:08:20 +00:00
0e033766e3 feat: adds markdown as an output for the URL component (#11312)
* feat: adds markdown as an output for the URL component

I found that I wanted to retain structure and URLs when loading from a URL, but HTML output provided too many useless tokens and text output lost that structure. This uses Microsoft's Markitdown package to turn results of the RecursiveURLLoader into markdown.

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-15 16:08:58 +00:00
583d2536d0 fix: add validation for api key for global variables (#11270)
* add validation for api key for global variables

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-15 15:03:44 +00:00
3ca5447956 fix: Prevent duplicate code blocks during streaming (#11261)
* fix code blocks error

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
2026-01-15 13:30:15 +00:00
4a673cffa7 feat: Add functionality to expand compact flow format (#10785)
* feat: Implement expansion of compact flow format to full flow format

* feat: Add endpoint to expand compact flow format to full flow format

* feat: Add unit tests for expand_compact_flow functionality

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* ️ Speed up function `_expand_node` by 1,281% in PR #10785 (`feat/no-code-pre-built-component`) (#10786)

Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>

* update index

* [autofix.ci] apply automated fixes

* fix: replace jose with jwt (#11285)

* replace jose with jwt

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* pin to lower pyjwt

* pyjwt version

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>

* update index

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: codeflash-ai[bot] <148906541+codeflash-ai[bot]@users.noreply.github.com>
Co-authored-by: Himavarsha <40851462+HimavarshaVS@users.noreply.github.com>
2026-01-14 21:41:26 +00:00
3a092d2906 docs: remove yarn lockfile and just use npm (#11254)
* bump-docusuaurus-to-3.9.2

* remove-yarn-lockfile

* cicd-use-npm-instead-of-yarn

* use-npm-in-docs

* remove-unused-stylesheets

* overrides-syntax

* Update docs/package.json

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Update docs/package.json"

This reverts commit b30dcefc82.

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-01-14 21:29:06 +00:00
d3369d0c2d fix: replace jose with jwt (#11285)
* replace jose with jwt

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* pin to lower pyjwt

* pyjwt version

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-14 20:25:09 +00:00
c46a3eec9a Revert "feat: add agenctic ux v0 with component generator (#11286)"
This reverts commit fbce0913fd.
2026-01-14 14:05:13 -03:00
20680cda7f fix: Set agentic_experience default to False (#11292)
Set agentic_experience default to False

Changed the default value of the agentic_experience setting from True to False to prevent the agentic MCP server from starting by default.
2026-01-14 14:02:02 +00:00
fbce0913fd feat: add agenctic ux v0 with component generator (#11286)
* initial state component forge

* component forge

* add save button to the terminal

* fix ruff style

* user experience improvements

* Update python_test.yml

* change reference for generate custom component

* add feature flag

* add feature flag

* Update agentic API routes and frontend constants

Changed backend API router prefix from '/generate-component' to '/agentic' and updated endpoint names for clarity. Updated corresponding frontend constants to match new API routes.

* [autofix.ci] apply automated fixes

* Update python_test.yml

* fix: feature flag

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix ruff

* test: fix jest unit tests

* [autofix.ci] apply automated fixes

* test: fix playwright mcp starter projects tests

---------

Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com>
2026-01-14 02:17:47 +00:00
0caea4e306 docs: Change CORS headers example to use array syntax (#11243)
* docs: Change CORS headers example to use array syntax

This ensures that the LANGFLOW_CORS_* environment variable examples are using the correct and working syntax.

* Place origins in list[str] as well

---------

Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
Co-authored-by: Jordan Frazier <122494242+jordanrfrazier@users.noreply.github.com>
2026-01-13 21:19:29 +00:00
21db5cea21 docs: troubleshooting for protocol buffers installation (#11271)
* install-protoc

* Apply suggestions from code review

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

* Update docs/docs/Support/troubleshooting.mdx

---------

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
2026-01-13 15:32:50 +00:00
93ccfac6c9 feat: stream_tool_updates option to show tool calls in playground chat (#10928)
* feat: add stream_tool_updates option to show tool calls in playground chat

- Add stream_tool_updates boolean input to agent configuration
- Make stream_tool_updates a keyword-only parameter in event handlers
- Update event processing to support real-time tool invocation visibility
- Add comprehensive unit tests for stream_tool_updates functionality
- Fix linting issues (line length, boolean arguments, whitespace)

* Fix AsyncMock lambda parameters in stream_tool_updates tests

- Changed lambda parameters from 'skip_db_update' to '**_kwargs'
- Fixes TypeError where handlers pass 'skip_db_update' but lambda expected different name
- Using underscore prefix to indicate intentionally unused parameter
- Affects 6 tests: test_handle_on_tool_start_with_stream_tool_updates_true/false,
  test_handle_on_tool_end_with_stream_tool_updates,
  test_handle_on_tool_error_with_stream_tool_updates,
  test_process_agent_events_with_stream_tool_updates (2 instances),
  test_handle_on_tool_start_keyword_only_parameter
- Addresses CodeRabbitAI feedback on PR

* Apply CodeRabbitAI recommendation for AsyncMock lambda parameters

- Use explicit 'skip_db_update=False' parameter instead of **_kwargs
- Add '# noqa: ARG005, FBT002' to suppress linter warnings
- ARG005: Unused lambda argument
- FBT002: Boolean default value in function definition
- Matches actual parameter name passed by event handlers
- Affects 6 tests in test_agent_events.py
- Follows CodeRabbitAI's recommended pattern for test mocks

* Rebuilt component index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* Add component index

* [autofix.ci] apply automated fixes

* Update component index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* chore: trigger build

* [autofix.ci] apply automated fixes

* chore: trigger build

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Fix message serialization to correctly include content blocks before sending event

* skip db update on tool error

* revert events changes

* revert agent changes

* revert agent changes

* revert starter projcets

* starter / comp index updates

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* chore: trigger build

---------

Co-authored-by: Steve Haertel <shaertel@ca.ibm.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Jordan Frazier <jordan.frazier@datastax.com>
2026-01-13 02:03:52 +00:00
637f6530ba docs: OpenAPI spec version upgraded from 1.7.1 to 1.7.2 (#11281)
Co-authored-by: github-merge-queue <118344674+github-merge-queue@users.noreply.github.com>
Co-authored-by: Mendon Kissling <59585235+mendonk@users.noreply.github.com>
2026-01-12 22:21:18 +00:00
8da8fdccef fix: valdiate watsonX key and enable tool calling for Watson X models (#11264)
* valdiate watsonX key

* [autofix.ci] apply automated fixes

* enable tool calling

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-12 19:58:03 +00:00
3166d1f08f fix: use lfx versions instead of langflow for comp index (#11260)
* Use lfx versions instead of langflow for comp index

* lfx langugage

* ruff

* [autofix.ci] apply automated fixes

* update index

* [autofix.ci] apply automated fixes

* Update the version key names

* [autofix.ci] apply automated fixes

* update comp index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-11 18:04:50 +00:00
a59ade4d61 feat: add text operations component (#11201)
* Create text_operations.py

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* text operations refactor code

* add missing operation fields

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* fix QA suggestions

* [autofix.ci] apply automated fixes

* change to MultilineInput

* ruff style checker

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: cristhianzl <cristhian.lousa@gmail.com>
2026-01-09 20:14:33 +00:00
fdffcc3dbb (feat) Dev APIs: Add lifecycle events with AGUI protocol (#10780)
Proof of Concept: Adding lifecycle events.

Added AGUI events to vertices and the graph. Created Decorator to add observability to Langflow workflows. TODO: Unit tests, feature gating to nullify impact in current production code paths.

Added unit tests for lifecycle_events. Refraining from using event_manager for now since this capability is goig to stay dormant until APIs are ready for streaming.

Added unit tests for before_callback_event and after_callback_event in graph and vertex classes.

Co-authored-by: Debojit Kaushik <debojitkaushik@Debojits-MacBook-Pro.local>
2026-01-09 19:54:20 +00:00
c8838d78c3 fix: disable unsupported components on cloud (#11246)
* disable components on cloud

* [autofix.ci] apply automated fixes

* fix ruff errors

* resolve conflicts

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes

* address comments

* [autofix.ci] apply automated fixes

* fix ruff errors

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-09 17:54:35 +00:00
3006b139c5 feat: add versioned hash to component index (#11244)
* Add versioned hash to component index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Remove fake backwards compatible code and associated tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* remove unused function, update index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix history merge again

* [autofix.ci] apply automated fixes

* Remove unnecessary concepts, simplify

* ruff

* [autofix.ci] apply automated fixes

* ruff

* [autofix.ci] apply automated fixes

* fail fast

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* Fix tests, fail fast

* ruff

* [autofix.ci] apply automated fixes

* Correctly strip out hash history when loading components from index

* Add tests for the hash history in comps

* [autofix.ci] apply automated fixes

* remove unused logger

* remove deepcopy and attempt to fix logger timeout test

* update comp index

* starter projects

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-09 15:34:10 +00:00
fe124ed253 fix: nightly temporalio dep (#11251)
* fix: temporalio dep missing for macos-amd64

temporalio dep missing for macos-amd64

* chore: pin pydantic-ai version dependent on system

* chore: add ci solution again

* chore: use macos-15-intel runner explicitly

* chore: revert back to working state

* chire: code rabbit refinements

* fix: properly skip test when skip flags are set

* chore: code rabbit refinements stable
2026-01-08 21:55:17 +00:00
c78253208c fix: add loading state to prevent duplicate flow creation on click (#11017)
* fix: add loading state to prevent duplicate flow creation on click

* Centralizing loading state to all components that create flow

* refactor(TemplatesModal): extract handleCreateBlankFlow from JSX

---------

Co-authored-by: Antônio Alexandre Borges Lima <antonio@Antonios-MacBook-Pro.local>
Co-authored-by: Cristhian Zanforlin Lousa <cristhian.lousa@gmail.com>
2026-01-08 19:04:24 +00:00
a4f4ec1cd7 chore: upgrade pyproject versions (#11249)
Upgrade pyproject versions

Upgrades to v1.8.0 main, v0.8.0 base, v0.3.0 lfx
2026-01-08 19:04:00 +00:00
19b7bb015e fix: include jpg in docling remote valid extensions (#11002)
* included jpg in docling remote valid extensions

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* update component index

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 18:28:32 +00:00
24b1464f38 fix: use same logic for clearEdges and detect broken edges (#11236)
* Use same logic for clearEdges and detect broken edges

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Carlos Coelho <80289056+carlosrcoelho@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 18:11:21 +00:00
87f1f9b42c feat: add context menu functionality to edges (#11241)
* feat: add context menu functionality to edges and integrate Radix UI context menu components

- Added `@radix-ui/react-context-menu` dependency to package.json.
- Implemented context menu in `DefaultEdge` component for edge deletion.
- Created a new `context-menu.tsx` file to encapsulate context menu components using Radix UI.

* chore: update package-lock.json after adding context menu for edges

* [autofix.ci] apply automated fixes

* test: update ComposIO and connect tools tests to ensure correct edge interactions

* [autofix.ci] apply automated fixes

* feat: add tests for edge creation and deletion via context menu

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 16:43:34 +00:00
031a1c3a41 feat: Create controller shell and schema model for new workflow API (#11111)
* feat: Create controller shell and schema model for new workflow API

- Add workflow API endpoints (POST /workflow, GET /workflow, POST /workflow/stop)
- Implement developer API protection with settings check
- Add comprehensive workflow schema models with proper validation
- Create extensive unit test suite covering all scenarios
- Apply Ruff linting standards and fix all code quality issues
- Support API key authentication for all workflow endpoints

* fix: Move developer API check to router-level dependency

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix: Remove response model as its automatically configured.

Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>

* [autofix.ci] apply automated fixes

---------

Co-authored-by: Janardan S Kavia <janardanskavia@Janardans-MacBook-Pro.local>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Gabriel Luiz Freitas Almeida <gabriel@langflow.org>
Co-authored-by: Janardan S Kavia <janardanskavia@mac.war.can.ibm.com>
2026-01-08 16:31:32 +00:00
7c19477bc2 feat: add Mustache template support for prompts (#9876)
* Add MustachePromptModal component for handling Mustache template prompts

- Implement MustachePromptModal component with support for editing and validating Mustache templates.
- Integrate with alert store for success, error, and notice alerts.
- Utilize Mustache library for parsing and highlighting template variables.
- Include UI components like Textarea, Badge, and Button for user interaction.
- Add functionality to handle variable checking and prompt validation via API.

* Add support for Mustache templates in prompt components and modals

- Introduced `MustachePromptModal` for handling Mustache-specific prompts.
- Updated `PromptAreaComponent` to conditionally render `MustachePromptModal` based on the `mustache` prop.
- Enhanced `parameterRenderComponent` to recognize and handle "mustache" type templates.
- Modified `varHighlightHTML` utility to optionally add curly braces around variable names.
- Extended `usePostValidatePrompt` API call to include a `mustache` flag.
- Updated component types to include `mustache` and `addCurlyBraces` options.

* Add mustache and @types/mustache dependencies to frontend package files

* Add support for mustache template format in message schema and input mixin

- Updated `format_text` and `from_template_and_variables` methods to accept a `template_format` parameter, allowing for different template formats.
- Modified `ChatPromptTemplate.from_messages` to include `template_format` parameter.
- Added `MUSTACHE_PROMPT` to the `InputTypes` enum in `input_mixin.py`.

* Add 'mustache' boolean field to API request model in base.py

* Add MustachePromptComponent and enhance prompt validation for mustache templates

- Introduce `MustachePromptComponent` class to create prompt templates with dynamic variables using mustache syntax.
- Add `build_prompt`, `_update_template`, `post_code_processing`, and `_get_fallback_input` methods to handle prompt creation and processing.
- Update `validate_prompt` function in `api_utils.py` to support mustache template variable extraction.
- Import `mustache_template_vars` for handling mustache-specific template variables.

* chore: update package dependencies in package.json and package-lock.json

- Bump @types/mustache from 4.2.5 to 4.2.6
- Add @xyflow/react at version 12.3.6
- Update ace-builds from 1.35.0 to 1.41.0
- Add moment-timezone at version 0.5.48
- Update mustache version to 4.2.0
- Add rehype-raw at version 6.1.1
- Remove unused @napi-rs/nice dependencies from package-lock.json

* feat: add 'mustache' to DIRECT_TYPES in constants.py

* fix: update field_type for template in MustachePromptComponent to MUSTACHE_PROMPT

* feat: add MustachePromptAreaComponent for rendering mustache prompts with enhanced styling and functionality

* refactor: update import paths for common components in mustachePromptModal

* feat: integrate MustachePromptAreaComponent into ParameterRenderComponent for mustache prompt rendering

* test: add comprehensive tests for MustachePromptComponent and template processing

- Introduced integration tests for MustachePromptComponent covering various scenarios including basic functionality, multiple variables, missing variables, and complex logic.
- Added unit tests for Message class to validate mustache template processing, including handling of special characters, lists, and conditional logic.
- Ensured robust coverage for edge cases such as empty templates and missing variables.

* test: add unit tests for ParameterRenderComponent and MustachePromptAreaComponent

- Introduced TypeScript tests for ParameterRenderComponent to validate props interface.
- Added comprehensive tests for MustachePromptAreaComponent focusing on mustache variable highlighting and props validation.
- Ensured robust coverage for various input scenarios, including handling of special characters and complex mustache variables.

* test: refine MustachePromptAreaComponent highlighting logic and add validation tests

- Updated the highlighting logic to only support simple mustache variables ({{variable_name}}) and exclude complex syntax.
- Enhanced unit tests to validate that complex mustache variables, variables with spaces, and invalid characters are not highlighted.
- Added tests for various edge cases, including variables starting with numbers and those containing special operators.
- Ensured comprehensive coverage for the MustachePromptAreaComponent's behavior in handling mustache templates.

* feat: implement secure mustache rendering in Message class

- Added a new utility module for mustache template security, including validation and safe rendering functions.
- Updated the Message class to support mustache template formatting using the new secure renderer.
- Ensured that only simple variable substitutions are allowed in mustache templates to enhance security.

* test: enhance MustachePromptComponent tests for variable handling and security

- Updated tests for MustachePromptComponent to ensure only simple variables are processed and complex syntax is rejected.
- Added new tests for validating mustache templates, including checks for invalid variable names and complex syntax.
- Introduced integration tests for mustache security utilities, ensuring robust validation and safe rendering of templates.
- Enhanced coverage for various edge cases, including nested objects and handling of None values.

* feat: add mustache prompt dialog subtitle and update modal reference

- Introduced a new constant for the mustache prompt dialog subtitle to guide users on using double curly brackets for variable introduction.
- Updated the MustachePromptModal to utilize the new subtitle constant, enhancing clarity and user experience.

* refactor: update display name in MustachePromptComponent for clarity

- Changed the display name from "Mustache Prompt" to "Prompt" to simplify the component's identification and improve user experience.

* refactor: move MustachePromptComponent to lfx

- Introduced MustachePromptComponent to create prompt templates with dynamic variables.
- Updated imports and exports in the processing module to include the new component.
- Implemented methods for building prompts and updating templates, enhancing flexibility in prompt generation.

* refactor: update input variable extraction logic in validate_prompt

- Adjusted the order of input variable extraction in the validate_prompt function to ensure correct handling of Mustache templates.
- Enhanced the process_prompt_template function to accept an is_mustache parameter, improving flexibility in template validation.

* refactor: enhance MustachePromptComponent with template validation and async updates

- Updated imports to reflect the new module structure under lfx.
- Added a validation step for Mustache templates to improve security.
- Refactored the post_code_processing method to an async update_frontend_node method for better performance and compatibility with async workflows.

* refactor: enhance Message class template handling with format support

- Updated the from_template_and_variables and from_template methods to accept a template_format parameter, improving flexibility in template processing.
- Ensured backward compatibility with previous versions while enhancing the functionality for template formatting options.

* feat: add 'mustache' to DIRECT_TYPES in constants

- Introduced 'mustache' as a new type in the DIRECT_TYPES list to support enhanced template processing capabilities.
- This addition aligns with recent updates to template handling and validation in the codebase.

* test: add unit tests for MustachePromptComponent

- Introduced comprehensive unit tests for the MustachePromptComponent, covering template variable extraction, handling of multiple variables, dot notation, and rejection of complex syntax.
- Added async tests for the build_prompt method to ensure correct message generation with various templates and variable scenarios.
- Enhanced test coverage to validate the update_frontend_node method's processing of templates.

* refactor: remove MustachePromptComponent and related tests

- Deleted the MustachePromptComponent from the processing module, streamlining the codebase by removing unused components.
- Removed associated unit tests to maintain consistency and reduce clutter in the test suite.
- Updated imports and exports in the processing module to reflect these changes.

* refactor: enhance PromptComponent with mode selection and template validation

- Updated the PromptComponent to include a mode input for selecting variable syntax, allowing for both Mustache and f-string formats.
- Implemented logic in the update_build_config method to adjust the template field type based on the selected mode.
- Added validation for Mustache templates to ensure security during template processing.
- Refactored the build_prompt and update_frontend_node methods to accommodate the new mode functionality and maintain compatibility with async workflows.

* test: add unit tests for PromptComponent template modes

- Introduced comprehensive unit tests for the PromptComponent, covering both f-string and Mustache modes.
- Validated mode switching, template updates, and prompt building for various scenarios, including handling of multiple variables and rejection of complex syntax.
- Ensured robust testing of the update_build_config and update_frontend_node methods to maintain functionality across different template formats.

* feat: add MustachePromptInput class to support Mustache template processing

- Introduced MustachePromptInput as a subclass of PromptInput, enabling the use of Mustache syntax for prompt generation.
- Updated InputTypes to include MustachePromptInput, enhancing the flexibility of input handling in the codebase.

* refactor: update prompt components to support mode selection and enhanced metadata

- Changed the icon for various prompt components from braces to prompts for better visual representation.
- Updated metadata to include a code hash and dependencies for improved tracking and management.
- Introduced a mode input for selecting variable syntax (f-string or Mustache), enhancing flexibility in template processing.
- Refactored prompt component code to accommodate the new mode functionality, ensuring compatibility with async workflows and maintaining robust template validation.

* feat: add "mustache" to LANGFLOW_SUPPORTED_TYPES in constants

* feat: include mustache flag in post_validate_prompt function

* fix: prevent retries on validation errors in usePostValidatePrompt mutation

* fix: simplify mustache variable validation to only allow simple variable names

* fix: update mustache variable regex to only match simple variable names

* fix: enhance template processing and validation for mustache mode

- Improved handling of template variables when switching modes, ensuring old fields are cleaned up.
- Added error handling during template validation to allow component creation even if validation fails.
- Streamlined the process of re-validating and processing templates to maintain compatibility with existing functionality.

* fix: refine input variable extraction for mustache and f-string templates

- Enhanced the validation process to differentiate between mustache and f-string variables.
- Updated the logic to ensure only relevant variables are retained based on the template syntax.
- Improved error messaging for better clarity on invalid input variables.

* chore: update component index

* test: add unit tests for mustache prompt component functionality

- Implemented tests for mode switching between f-string and mustache syntax.
- Verified that old fields are cleaned up when switching modes.
- Added checks for validation errors and ensured component functionality remains intact.
- Included tests for mixed syntax handling and the absence of connection handles for mustache fields.

* test: remove mustache prompt component unit tests

- Deleted the unit tests for the mustache prompt component, which included functionality for mode switching, validation error handling, and mixed syntax scenarios.
- This cleanup is part of a broader refactor to streamline test coverage and focus on essential components.

* chore: update package-lock.json to add new dependencies and remove unused ones

- Added "@radix-ui/react-radio-group" and "use-stick-to-bottom" dependencies.
- Removed "@smakss/react-scroll-direction" dependency.
- Updated various other dependencies to their latest versions for improved stability and performance.

* test: update mustache security tests for variable naming conventions

- Modified tests to use underscore notation for variable names instead of dot notation, ensuring compliance with the updated validation rules.
- Removed tests for dot notation and nested object properties, which are no longer supported.
- Added new tests for rendering with multiple variables and underscore variable names, enhancing coverage for the updated functionality.

* update component index

* test: update mustache template processing tests

- Removed tests for dot notation and nested object properties, aligning with the updated validation rules.
- Modified existing tests to ensure dot notation is rejected, enhancing security checks for mustache templates.
- This update streamlines the test suite to focus on supported variable naming conventions.

* test: remove mustache prompt integration and unit tests

- Deleted integration and unit tests for the MustachePromptComponent, including various scenarios for template processing and variable handling.
- This cleanup is part of an effort to streamline the test suite and focus on essential components, aligning with recent changes in validation rules and functionality.

* test: refine mustache template variable regex in tests

- Updated the regex in the MustachePromptAreaComponent tests to only match simple mustache variables, removing support for complex syntax.
- This change aligns with the recent updates to validation rules and enhances the clarity of the test cases.

* test: update mustache prompt component tests for variable highlighting

- Modified tests to ensure that complex mustache syntax is not highlighted, aligning with the updated validation rules.
- Renamed a test to clarify that dot notation variables should not be highlighted, reflecting the current functionality.
- These changes enhance the accuracy and clarity of the test cases for mustache template processing.

* refactor: update addLegacyComponents function to improve selector checks

- Replaced the expect assertion with a waitForSelector call to ensure the sidebar legacy switch is checked, enhancing reliability in tests.
- Updated import statement for Page from "@playwright/test" for consistency with current practices.

* fix playwright imports

* fix: Add missing newline at end of package.json and correct syntax in test utility functions

* fix: Update placeholder text and prompt dialog subtitle in Mustache component

* feat: Enhance PromptComponent to support Mustache syntax and dynamic template updates

* test: Add tests for double brackets toggle in Prompt component

- Add Playwright E2E tests for double brackets variable extraction
- Add Python unit tests for use_double_brackets BoolInput
- Test single and multiple variable extraction with {{var}} syntax
- Verify toggle persistence and input field creation

* chore: Update starter projects with use_double_brackets field

Update all starter project templates to include the new
use_double_brackets field in Prompt components

* chore: Update package-lock.json to reflect dependency changes

* [autofix.ci] apply automated fixes

* Fix: enhance mustache security by adding triple braces pattern and improving safe rendering documentation

* Fix: add logging for template validation failures in PromptComponent

* Fix: update mustache interface to make 'mustache' optional and ensure default value is false; add mustache security utilities for template validation

* Fix: improve error handling in validate_prompt for mustache template parsing

* Fix: refactor variable extraction in MustachePromptModal for improved regex matching and state management

* chore: update package-lock.json to add peer dependencies and remove unused packages

- Added peer: true to several dependencies to indicate peer dependency requirements.
- Removed unused dependencies related to @napi-rs/nice and its variants.

* feat: add unit tests for MustachePromptAreaComponent and MustachePromptModal

* update package lock

* update package lock

* [autofix.ci] apply automated fixes

* update index

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 14:59:47 +00:00
02cacd773e fix: node output field loop input check to match colors (#11230)
* Fix node output field loop input check to match colors

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 14:42:51 +00:00
1b113a4e1b feat: Add specialized handler for tool calling improvements (#10857)
* add handler for granite models

* chore(agent.py): remove debug logging statements to clean up the code and reduce noise in logs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* add gh suggestion and code improvements

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* fix ruff checkers

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 14:20:27 +00:00
2178c1f8a5 fix: Change background color from emerald to neutral for note templates (#11224) 2026-01-08 14:14:03 +00:00
ed624d7e08 fix: Reset vertex built state to False on build exceptions (#11165)
* add non built status when vertex fails

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* fix ruff checkers

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 13:44:46 +00:00
484ad892ba chore: Merge v1.7.2 into main (#11239)
* fix market research input found

* cherry-pick changes

* chore(release): Bump version to 1.7.2 (#11208)

* change langflow base version

* fix: publish amd fe/be images

* fix: build-lfx from test-cross-platform needs

remove build-lfx from test-cross-platform needs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* fix jest test message order

---------

Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 13:44:44 +00:00
8550f11298 feat: Add customizable HTTP headers support to MCPToolsComponent (#11023)
* test(headers): add comprehensive tests for headers functionality in MCP component to ensure correct behavior and validation of header inputs

feat(mcp_component.py): add headers input to MCPToolsComponent for customizable HTTP headers in requests

This change allows users to specify HTTP headers, such as
Authorization, for requests to the MCP server, enhancing
authentication and flexibility in server interactions.

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

* fix market research input found

* cherry-pick changes

* chore(release): Bump version to 1.7.2 (#11208)

* change langflow base version

* fix: publish amd fe/be images

* fix: build-lfx from test-cross-platform needs

remove build-lfx from test-cross-platform needs

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes (attempt 3/3)

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Adam Aghili <Adam.Aghili@ibm.com>
2026-01-08 13:26:06 +00:00
ff0a197f1d chore(frontend): Upgrade deps (#11213)
* update frontend packages

* update rehype math

* fix: Upgrade vite to v7 and fix security vulnerabilities

* fix tests model providers

* format lock

* [autofix.ci] apply automated fixes

* fix general bugs 10 test

* fix logs tests failing

* [autofix.ci] apply automated fixes

* rollback files content blocks

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 13:16:02 +00:00
943e22f735 fix: Message ID and Output inconsistencies (#11061)
* fix id

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes (attempt 2/3)

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-08 11:39:06 +00:00
c728cde9cb docs: pass variable input to python interpreter component (#11217)
* pass-input-to-repl

* Apply suggestions from code review

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>

---------

Co-authored-by: April I. Murphy <36110273+aimurphy@users.noreply.github.com>
2026-01-07 21:02:45 +00:00
49ed55fbea test(mcp-frontend): Improve test reliability and reduce code duplication (#11232)
* fix all mcp server tests

* [autofix.ci] apply automated fixes

* [autofix.ci] apply automated fixes

* add fallback to tavily api key

* [autofix.ci] apply automated fixes

---------

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-07 15:50:09 -05:00
24db9b9e5a test: Improve api key input reliability with retry mechanism (#11237) 2026-01-07 16:19:45 -03:00