Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
110 commits
Select commit Hold shift + click to select a range
34b97b9
fix: Fixes Kubernetes deployment crash on runtime_port parsing (#1196…
Adam-Aghili Mar 2, 2026
93323ed
fix(frontend): show delete option for default session when it has me…
keval718 Mar 2, 2026
b0d2cf8
feat: add documentation link to Guardrails component (#11978)
AntonioABLima Mar 2, 2026
68c8df4
feat: traces v0 (#11689) (#11983)
Adam-Aghili Mar 2, 2026
5e16f92
fix(test): Fix superuser timeout test errors by replacing heavy clien…
Adam-Aghili Mar 2, 2026
15e95c5
refactor(components): Replace eager import with lazy loading in agent…
Cristhianzl Mar 3, 2026
b2b03a3
fix: add ondelete=CASCADE to TraceBase.flow_id to match migration (#1…
RamGopalSrikar Mar 3, 2026
0b37a34
fix: LE-456 - Update ButtonSendWrapper to handle building state and i…
viktoravelino Mar 3, 2026
a25aa8c
Fix: pydantic fail because output is list, instead of a dict (#11987)
olayinkaadelakun Mar 3, 2026
74be98a
refactor: Update guardrails icons (#12016)
Empreiteiro Mar 3, 2026
be3c0e0
feat(ui): Replace Show column toggle with eye icon in advanced dialog…
Cristhianzl Mar 4, 2026
da97a9e
fix(ui): Prevent auto-focus and tooltip on dialog close button (#12027)
Cristhianzl Mar 4, 2026
d536c28
fix: reset button (#12024)
olayinkaadelakun Mar 4, 2026
4e2c793
fix: Handle message inputs when ingesting knowledge (#11988)
erichare Mar 4, 2026
ef6b1e3
fix(ui): add error handling for invalid JSON uploads via upload butt…
keval718 Mar 4, 2026
230c3fc
fix(ui): Add array validation for provider variables mapping (#12032)
Cristhianzl Mar 4, 2026
d3fcecb
fix: LM span is now properly parent of ChatOpenAI (#12012)
Adam-Aghili Mar 4, 2026
c7b3ef3
fix: Design fix for traces (#12021)
olayinkaadelakun Mar 4, 2026
8f97301
fix: Add file upload extension filter for multi-select and folders (#…
dkaushik94 Mar 4, 2026
fa31737
fix: plaground - inspection panel feedback (#12013)
viktoravelino Mar 4, 2026
e8b7d49
fix: playground does not scroll down to the latest user message upon …
Adam-Aghili Mar 4, 2026
8f03c89
fix: knowledge Base Table — Row Icon Appears Clipped/Cut for Some Ent…
Adam-Aghili Mar 4, 2026
a304927
fix: MCP Server Modal Improvements (#12017) (#12038)
Adam-Aghili Mar 4, 2026
ba7982c
fix: change loop description (#12018) (#12037)
Adam-Aghili Mar 4, 2026
e848ff9
feat: add mutual exclusivity between ChatInput and Webhook components…
Jkavia Mar 4, 2026
73aad93
fix: mcp config issue (#12045)
edwinjosechittilappilly Mar 4, 2026
03bf951
fix: langflow breaks when we click on the last level of the chain (#1…
olayinkaadelakun Mar 4, 2026
d6b7d88
fix: standardize "README" title and update API key configuration note…
Adam-Aghili Mar 4, 2026
f79ce64
fix: Cherry-pick Knowledge Base Improvements (le-480) into release-1.…
deon-sanchez Mar 4, 2026
804f4b5
fix(ui): ensure session deletion properly clears backend and cache (…
keval718 Mar 5, 2026
86c277c
fix: Check template field is dict before access (#12035)
edwinjosechittilappilly Mar 5, 2026
d78efc7
fix: hide Knowledge Ingestion component and rename Retrieval to Knowl…
viktoravelino Mar 5, 2026
6684b0c
fix: Embedding Model Field Stuck in Infinite Loading When No Model Pr…
deon-sanchez Mar 5, 2026
55c2bfb
fix: Close model dropdown popover before refresh to prevent width gli…
Cristhianzl Mar 5, 2026
84ba5a5
feat: Add PDF and DOCX ingestion support for Knowledge Bases (#12064)
Cristhianzl Mar 5, 2026
2398f05
fix: Use global LLM in knowledge retrieval (#11989)
erichare Mar 5, 2026
07b111e
fix: Regenerate the knowledge retrieval template (#12070)
erichare Mar 5, 2026
b0f49db
fix: refactor KnowledgeBaseEmptyState to use optimistic updates hook …
deon-sanchez Mar 5, 2026
44680b7
fix: Apply provider variable config to Agent build_config (#12050)
edwinjosechittilappilly Mar 5, 2026
699e356
LE-489: KB Metrics calculation batch caculator (#12049)
dkaushik94 Mar 5, 2026
d7cb9a0
fix(ui): Correct AstraDB icon size to use relative units (#12137)
Cristhianzl Mar 10, 2026
05404c7
fix(api): Handle Windows ChromaDB file locks when deleting Knowledge …
Cristhianzl Mar 10, 2026
f0d91e7
fix: Fix image preview for Windows paths in playground (#12136)
Cristhianzl Mar 10, 2026
e0a63ec
chore: update fastapi dep (#12141)
jordanrfrazier Mar 11, 2026
aaeda7e
fix: Properly propagate max tokens param to Agent (#12151)
erichare Mar 11, 2026
e1e1313
fix: include uv/uvx in runtime Docker image (#12127)
Adam-Aghili Mar 11, 2026
1e9be16
fix: preserve api key configuration on flow export (#12129)
HimavarshaVS Mar 12, 2026
4e53cc5
Fix: Tweaks override ENV VARIABLES (#12152)
dkaushik94 Mar 12, 2026
0a6f7e0
fix(mcp): Handle missing config file in MCP client availability detec…
Cristhianzl Mar 12, 2026
8665ae1
fix: nightly now properly gets 1.9.0 branch (#12215)
Adam-Aghili Mar 17, 2026
cacb54d
docs: add search icon (#12216)
mendonk Mar 17, 2026
e14caf8
fix: Avoid foreign key violation on span table with topological sort …
erichare Mar 19, 2026
2e75cf4
fix: Disable tool calling for Gemini 3 models (#12238)
erichare Mar 19, 2026
63ad0ec
chore: upgrade versions
Adam-Aghili Mar 19, 2026
5aabc74
feat: Add Windows Playwright tests to nightly builds (#12264)
vjgit96 Mar 20, 2026
288e610
docs: docling dependencies for langflow desktop and updated Desktop e…
mendonk Mar 23, 2026
2f06f94
docs: contribute to next release candidate branch and not main (#12247)
mendonk Mar 23, 2026
08bf984
docs: gemini3 tool calling is temporarily disabled (#12274)
mendonk Mar 23, 2026
dd8d47f
fix: replace grep -oP with sed for Node.js version extraction in Dock…
vjgit96 Mar 25, 2026
48c5d42
fix: Add ephemeral file upload and credential env fallback (#12333)
Cristhianzl Mar 25, 2026
ae02b4b
fix: prevent overwriting user-selected global variables in provider c…
erichare Mar 25, 2026
9deec30
chore: version bump and merge 1.8.2 (#12335)
Adam-Aghili Mar 26, 2026
2f0bf90
fix: disable dangerous deserialization by default in FAISS component …
Adam-Aghili Mar 26, 2026
b0cf8c2
fix: replace removed Langflow-runner with ubuntu-latest for AMD64 Doc…
vjgit96 Mar 26, 2026
af8da56
revert: restore Langflow-runner for AMD64 Docker builds
vjgit96 Mar 26, 2026
1b3a656
fix(deps): pin tar-fs to >=2.1.4 to fix symlink following vulnerabili…
Adam-Aghili Mar 31, 2026
811ac4b
chore: bump versions
Adam-Aghili Mar 31, 2026
6cb87cc
fix: Fix shareable playground build events and message rendering (#12…
Cristhianzl Mar 31, 2026
65c3139
fix: restore langflow-logo-color-black-solid.svg removed in docs rele…
tarciorodrigues Apr 1, 2026
e555e47
fix: Cherry-pick nightly SDK build fixes to main (#12491)
erichare Apr 3, 2026
2fa3b36
Merge remote-tracking branch 'origin/release-1.8.2'
vjgit96 Apr 6, 2026
7f44894
Merge remote-tracking branch 'origin/release-1.8.3'
vjgit96 Apr 6, 2026
1e61ac4
Merge remote-tracking branch 'origin/release-1.8.4'
vjgit96 Apr 6, 2026
da516b7
Merge release branch
erichare Apr 14, 2026
9aae6de
ci: increase backend test timeout
erichare Apr 15, 2026
ce6507b
ci: add mend integration
Adam-Aghili Apr 6, 2026
88d9575
chore: add whitesource to ignore and scan all src
Adam-Aghili Apr 6, 2026
5d6a7a0
chore: address eric's comment 1
Adam-Aghili Apr 21, 2026
89d1c60
feat: Enhance config loading by applying GUNICORN_CMD_ARGS before pro…
severfire Apr 15, 2026
6b0c95d
refactor: Center truncate deployment provider URL (#12579)
a-effort Apr 15, 2026
5307f40
feat: filter out live connections from wxo adapter (#12744)
HzaRashid Apr 16, 2026
7b06c20
fix(frontend): filter duplicate draft/live connections in deploy moda…
viktoravelino Apr 16, 2026
b398f63
test: add missing test coverage for wxo deployments (#12689)
jordanrfrazier Apr 17, 2026
957ade8
chore: upgrade wxo adk to 2.8.0 (#12707)
HzaRashid Apr 20, 2026
974c5ab
feat(deployments): filter WXO agent list to drafts when load_from_pro…
HzaRashid Apr 20, 2026
0a34421
feat(google): refresh Gemini model list and enable tool calling for G…
erichare Apr 20, 2026
c77c473
feat: e2e tests for deployments api (#12767)
HzaRashid Apr 21, 2026
dc2411c
fix(custom): honor asname in `from X import Y as Z` for custom compon…
erichare Apr 21, 2026
b8fe970
fix(mcp): close path traversal + cross-user disclosure (PVR0754098) (…
erichare Apr 21, 2026
dbc87e7
fix: db guards for deployments (#12339)
HzaRashid Apr 21, 2026
aced13e
docs: clarify autosaving and versioned flow saving (#12794)
mendonk Apr 22, 2026
4beab56
docs: add multi-model opensearch component (#12799)
mendonk Apr 22, 2026
f788307
docs: wxo feature (#12677)
mendonk Apr 22, 2026
0ab5f04
docs: clarify trace storage when multiple providers are enabled (#12816)
mendonk Apr 22, 2026
4fcc243
ref: removes retries from wxo api calls (#12770)
jordanrfrazier Apr 22, 2026
05750a3
fix(traces): serialize enum values for PostgreSQL on trace/span table…
erichare Apr 22, 2026
efae69f
fix: preserve spaces in shareable playground chat input (#12833)
Cristhianzl Apr 22, 2026
8524d49
docs: concatenate and merge options for dataframe operations componen…
mendonk Apr 22, 2026
b566244
fix(security): require auth on deprecated /api/v1/upload/{flow_id} (#…
erichare Apr 22, 2026
f52d0f0
fix: prevent XSS in chat messages with rehype-sanitize (#12718)
Jkavia Apr 22, 2026
b0afe3d
fix(security): close IDOR in get_flow_by_id_or_endpoint_name (LE-639)…
erichare Apr 22, 2026
fc1d32a
ref: set wxo ff to true by default (#12826)
jordanrfrazier Apr 22, 2026
849158e
docs: tip for running local ollama models (#12840)
mendonk Apr 22, 2026
b2d4539
fix(ci): prevent duplicate tags and validate tag format in release wo…
vjgit96 Apr 22, 2026
0e6d284
fix(security): default WEBHOOK_AUTH_ENABLE to True (#12845)
erichare Apr 22, 2026
cc50cae
fix: route memory ops to stubs when DB service is noop (#12808)
jordanrfrazier Apr 23, 2026
0659105
fix: allow backend/frontend Docker builds when main version exists (#…
vjgit96 Apr 23, 2026
0732423
chore: security patch (#12725)
Adam-Aghili Apr 23, 2026
dc26d19
fix: Update signature for WXO tests
erichare Apr 23, 2026
b13054a
feat: valkey component
MatthiasHowellYopp Mar 30, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .agents/skills/e2e-testing/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ description: Write and review Playwright E2E tests for Langflow. Trigger when th

| Tool | Version | Purpose |
|------|---------|---------|
| Playwright | 1.57.0 | E2E test runner + browser automation |
| Playwright | 1.59.1 | E2E test runner + browser automation |
| Chromium | (bundled) | Default browser (Firefox/Safari disabled) |
| Custom fixtures | `tests/fixtures.ts` | Auto-detects API errors and flow execution failures |

Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/docker-build-v2.yml
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,8 @@ jobs:
echo "Latest main release version: $last_released_version"
fi
if [ "$version" = "$last_released_version" ]; then
# Skip check only applies to main image, not backend/frontend which are separate images
if [ "$version" = "$last_released_version" ] && [[ "${{ inputs.release_type }}" != "main-backend" ]] && [[ "${{ inputs.release_type }}" != "main-frontend" ]]; then
echo "Main docker version $version is already released. Skipping release."
echo skipped=true >> $GITHUB_OUTPUT
exit 0
Expand Down
56 changes: 56 additions & 0 deletions .github/workflows/mend.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
name: "Mend"

on:
push:
branches: ["release-*", "main"]
pull_request:
branches: ["release-*", "main"]

concurrency:
group: mend-${{ github.ref }}
cancel-in-progress: true

env:
NODE_VERSION: "22"

jobs:
mend-scan:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Repository
uses: actions/checkout@v6

- name: Setup Node.js Environment
uses: actions/setup-node@v6
with:
node-version: ${{ env.NODE_VERSION }}
cache: "npm"
cache-dependency-path: ./src/frontend/package-lock.json

- name: Install Frontend Dependencies
working-directory: ./src/frontend
run: npm ci

- name: Set up Java (Semeru)
uses: actions/setup-java@v5
with:
distribution: "semeru"
java-version: "21"

- name: Download Mend Unified Agent
run: |
curl --fail --show-error --retry 3 --location -o wss-unified-agent.jar https://unified-agent.s3.amazonaws.com/wss-unified-agent.jar

- name: Run Mend Scan
#prevent forks from running mend scans
if: github.event_name != 'pull_request' || github.event.pull_request.head.repo.full_name == github.repository
env:
WS_APIKEY: ${{ secrets.WS_APIKEY }}
WS_WSS_URL: ${{ secrets.WS_WSS_URL }}
WS_USERKEY: ${{ secrets.WS_USERKEY }}
WS_PRODUCTNAME: ${{ secrets.WS_PRODUCTNAME }}
WS_PROJECTNAME: ${{ secrets.WS_PROJECTNAME }}
run: |
java -jar wss-unified-agent.jar -d src -logLevel info
2 changes: 1 addition & 1 deletion .github/workflows/python_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -93,7 +93,7 @@ jobs:
- name: Run unit tests
uses: nick-fields/retry@v3
with:
timeout_minutes: 15
timeout_minutes: 20
max_attempts: 2
command: make unit_tests args="-x -vv --splits ${{ matrix.splitCount }} --group ${{ matrix.group }} --reruns 5 --cov --cov-config=src/backend/.coveragerc --cov-report=xml --cov-report=html"

Expand Down
53 changes: 51 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,11 @@ on:
required: false
type: boolean
default: true
run_pip_check:
description: "Whether to run pip check - ONLY SET TO FALSE ONCE YOU HAVE ALREADY ATTEMPTED AND FAILED A RUN THEN MADE SURE DEPS DO NOT CAUSE FAILURES"
required: false
type: boolean
default: true

jobs:
echo-inputs:
Expand Down Expand Up @@ -98,6 +103,46 @@ jobs:

echo "Validated: '${{ inputs.release_tag }}' is a valid tag."

validate-tag-format:
name: Validate Tag Format and Check for Duplicates
runs-on: ubuntu-latest
needs: [validate-tag]
steps:
- name: Checkout code
uses: actions/checkout@v6
with:
fetch-depth: 0

- name: Validate Tag Has v Prefix
run: |
TAG="${{ inputs.release_tag }}"
if [[ ! "$TAG" =~ ^v[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
echo "❌ Error: Tag must start with 'v' and follow semver format (v1.2.3)"
echo " Got: $TAG"
echo ""
echo "This is required to ensure GitHub's generateReleaseNotes uses the correct base comparison."
exit 1
fi
echo "✅ Tag format is valid: $TAG"

- name: Check for Duplicate Tag Without v Prefix
run: |
TAG="${{ inputs.release_tag }}"
TAG_WITHOUT_V="${TAG#v}"

if git rev-parse "$TAG_WITHOUT_V" >/dev/null 2>&1; then
echo "❌ Error: Duplicate tag without 'v' prefix exists: $TAG_WITHOUT_V"
echo " This will cause release notes to use the wrong base comparison."
echo ""
echo " The tag '$TAG_WITHOUT_V' points to commit: $(git rev-parse --short $TAG_WITHOUT_V)"
echo " The tag '$TAG' points to commit: $(git rev-parse --short $TAG)"
echo ""
echo " To fix this, delete the duplicate tag:"
echo " git push origin :refs/tags/$TAG_WITHOUT_V"
exit 1
fi
echo "✅ No duplicate tag found"

validate-dependencies:
name: Validate Release Dependencies
runs-on: ubuntu-latest
Expand Down Expand Up @@ -560,6 +605,7 @@ jobs:
fi
uv pip install $FIND_LINKS --prerelease=allow -e src/backend/base
- name: Check for dependency incompatibility
if: ${{ inputs.run_pip_check }}
run: uv pip check
- name: Set version for pre-release
if: ${{ inputs.pre_release }}
Expand Down Expand Up @@ -707,6 +753,7 @@ jobs:
fi
uv pip install $FIND_LINKS --prerelease=allow -e .
- name: Check for dependency incompatibility
if: ${{ inputs.run_pip_check }}
run: uv pip check
- name: Set version for pre-release
if: ${{ inputs.pre_release }}
Expand Down Expand Up @@ -1000,14 +1047,16 @@ jobs:
create_release:
name: Create Release
runs-on: ubuntu-latest
needs: [determine-main-version, build-main, publish-main]
needs:
[determine-main-version, build-main, publish-main, validate-tag-format]
if: |
always() &&
!cancelled() &&
!inputs.dry_run &&
inputs.create_release &&
needs.build-main.result == 'success' &&
needs.publish-main.result == 'success'
needs.publish-main.result == 'success' &&
needs.validate-tag-format.result == 'success'
steps:
- uses: actions/download-artifact@v4
with:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/typescript_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ env:
# Define the directory where Playwright browsers will be installed.
# This path is used for caching across workflows
PLAYWRIGHT_BROWSERS_PATH: "ms-playwright"
PLAYWRIGHT_VERSION: "1.57.0"
PLAYWRIGHT_VERSION: "1.59.1"
LANGFLOW_FEATURE_WXO_DEPLOYMENTS: "true"

jobs:
Expand Down
9 changes: 8 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -292,4 +292,11 @@ sso-config.yaml
AGENTS.md
CLAUDE.local.md
langflow.log.*
tmp_toolguard/
tmp_toolguard/

#whitesource
whitesource/


#AI
.kiro
Loading
Loading