76d7a44585
chore(api): reformat code
2026-01-28 16:42:57 +08:00
83b81f2c2e
fix(api): align workflow execution queue name in entrypoint.sh
2026-01-28 16:24:04 +08:00
5baf2aa644
chore(api): Ignore HumanInput related import violations
2026-01-28 16:23:47 +08:00
f3bd53bced
chore(api): remove unnecessary file
2026-01-28 16:23:47 +08:00
c3b7b3ed0c
Merge remote-tracking branch 'upstream/main' into feat/human-input-merge-again
2026-01-28 16:21:37 +08:00
a6c98c14ec
refactor(api): rename celery queue for workflow & chatflow execution
...
Rename the celery queue name from `chatflow_execute` to
`workflow_base_app_execution` to better reflect it is used by
workflow based applications, not only chatflow.
2026-01-28 08:36:25 +08:00
6225975f43
Fix the ratelimit in HumanInputFormApi (vibe-kanban bcdc0260)
...
The file path is: api/controllers/web/human\_input\_form.py.
I have checked the implementation of RateLimiter and suspect this is a bug of the RateLimiter class.
Try to use TDD way to locate and fix this issue.
2026-01-28 08:28:08 +08:00
966a87b81a
fix(api): ensure node and edge states are properly persisted while pausing
2026-01-28 08:17:53 +08:00
3d414678e3
fix(graph_engine): Cannot run single iteration or loop node ( #31470 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: Yeuoly <45712896+Yeuoly@users.noreply.github.com >
2026-01-28 01:05:59 +08:00
d76ad15fca
refactor(graph_engine): move observability layer and persistence laye… ( #31620 )
2026-01-28 00:54:21 +08:00
144ef0880a
fix(cors): correct CORS resource pattern for /console/api routes ( #31485 )
...
Signed-off-by: NeatGuyCoding <15627489+NeatGuyCoding@users.noreply.github.com >
2026-01-27 20:03:32 +08:00
11259617fa
test: add comprehensive tests for chat-user-input component ( #31595 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 20:02:49 +08:00
caa30ddcc0
chore: remove project skills ( #31615 )
2026-01-27 19:54:46 +08:00
8ec4233611
fix: doc not gen bug ( #31547 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-01-27 20:19:39 +09:00
19e3d07baf
Update HumanInputFormDefinition.expiration_time to use unix timestamp in seconds (vibe-kanban d44e8e03)
...
The type of this field should be `int`.
2026-01-27 18:31:41 +08:00
86d34214c1
refactor(api): Remove unused method
2026-01-27 18:18:51 +08:00
69a1acbef6
fix(api): update backstage form submission url
2026-01-27 18:18:14 +08:00
6cd62971c8
Modify ChatConversationApi to include pause state in status_count (vibe-kanban 4f35bf71)
...
If the workflow generating a message is paused, the status\_count should count it as paused.
2026-01-27 18:12:13 +08:00
d289cf4824
Modify WorkflowRunNodeExecutionListApi and keep paused records as is (vibe-kanban 05b90412)
...
The current implementation filters out all node executions whose status is `paused`. Please remove this logic, add unit / integration tests and execute relevant tests.
2026-01-27 18:11:24 +08:00
f3eb342883
fix(api): add expiration_time to form definition and events / response (vibe-kanban 3290f924)
2026-01-27 18:10:52 +08:00
e482588ef8
fix: ConsoleDatasetListQuery request.args.to_dict() ( #31598 )
2026-01-27 17:12:52 +09:00
b66bd5f5a8
feat: enhance quota panel with installed providers mapping ( #31546 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 15:43:37 +08:00
c8abe1c306
test: add tests for dataset document detail ( #31274 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 15:43:27 +08:00
51ed03c9e0
fix(api): ensure _build_pause_event construct Pydantic models conrrectly (vibe-kanban f9ea3944)
2026-01-27 15:31:31 +08:00
eca26a9b9b
feat: Enhances OpenTelemetry node parsers ( #30706 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-27 15:30:21 +08:00
febc9b930d
chore: update react and next version ( #31593 )
2026-01-27 14:06:09 +08:00
4bfd33c6f2
fix the issue in mark_timeout (vibe-kanban db2a9506)
...
distinguish between the global timeout and node timeout.
For node-level timeout, the status should be updated to timeout.
for global timeout, the status should be updated to expired.
For status in (timeout, expired, SUBMITTED), the form should not be processed by the `check_and_handle_human_input_timeouts` logic.
only node-level timeout should resume the execution of workflow, global timeout should mark execution as STOPPED.
Update the documentation of HumanInputFormStatus to reflect the facts above.
2026-01-27 13:53:27 +08:00
b467edb524
fix the issue in mark_timeout (vibe-kanban db2a9506)
...
distinguish between the global timeout and node timeout.
For node-level timeout, the status should be updated to timeout.
for global timeout, the status should be updated to expired.
For status in (timeout, expired, SUBMITTED), the form should not be processed by the `check_and_handle_human_input_timeouts` logic.
only node-level timeout should resume the execution of workflow, global timeout should mark execution as STOPPED.
Update the documentation of HumanInputFormStatus to reflect the facts above.
2026-01-27 11:47:59 +08:00
d13638f6e4
test: wrap test cleanup in act() to prevent window is not defined error ( #31558 )
...
Signed-off-by: majiayu000 <1835304752@qq.com >
2026-01-27 11:25:14 +08:00
b4eef76c14
fix: billing account deletion ( #31556 )
2026-01-27 11:18:23 +08:00
cbf7f646d9
chore(deps): bump pypdf from 6.6.0 to 6.6.2 in /api ( #31568 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2026-01-27 11:06:13 +08:00
c58647d39c
refactor(web): extract MCP components and add comprehensive tests ( #31517 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: Claude Haiku 4.5 <noreply@anthropic.com >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 11:05:59 +08:00
f6be9cd90d
refactor: replace request.args.get with Pydantic BaseModel validation ( #31104 )
...
Co-authored-by: GlobalStar117 <GlobalStar117@users.noreply.github.com >
Co-authored-by: Asuka Minato <i@asukaminato.eu.org >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-01-27 10:48:42 +08:00
959da8a7ca
fix: do not check DeliveryMethod.enabled flag in delivery-test endpoints (vibe-kanban e9790bdb)
2026-01-27 10:45:20 +08:00
360f3bb32f
chore(deps): bump pycryptodome from 3.19.1 to 3.23.0 in /api ( #31504 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-27 10:43:05 +08:00
8519b16cfc
docs: add ESLint guide to AGENTS.md ( #31559 )
...
Signed-off-by: majiayu000 <1835304752@qq.com >
2026-01-27 09:32:55 +08:00
f00d823f9f
chore: move agent notes into docstrings ( #31560 )
2026-01-27 09:32:26 +08:00
7c33e5107b
feat(api): implement paused status exposure for service api
2026-01-27 09:26:16 +08:00
116ec9dd04
Read the current implementation and consider the following problem (vibe-kanban 25d8b973)
...
Currently, the HumanInput node yields a `HumanInputFormFilledEvent` event while form is submmited. However, for form level timeout, current no event about timeout is emitted. This makes the frontend UI not updated while the events of time out are sent to the frontend.
Analysis this problem, propose a way to resolve this issue.
2026-01-27 08:46:41 +08:00
9bbe63c1d8
Implement a ratelimit for Web App Form endpoints (vibe-kanban 033e0d0d)
...
Prevent adversaries from brute-frocing the form token.
2026-01-27 07:49:50 +08:00
e48419937b
feat: chatflow support multimodal ( #31293 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-27 00:24:48 +08:00
5eaf0c733a
fix: service api doc can not gen ( #31549 )
2026-01-26 21:59:02 +09:00
f561656a89
chore: follow-up fixes for storybook vite migration ( #31545 )
2026-01-26 20:20:14 +08:00
f01f555146
chore: increase plugin cache ttl to 1 hour ( #31552 )
2026-01-26 19:48:33 +08:00
47d0e400ae
chore: update to story book nextjs-vite ( #31536 )
2026-01-26 17:07:20 +08:00
b59713b980
Return the form expired error code in get form definition in WEbAPp Api (vibe-kanban 758765b0)
2026-01-26 16:14:02 +08:00
8724ba04aa
fix: fix Cannot read properties of null (reading 'credential_form_sch… ( #31117 )
2026-01-26 15:52:53 +08:00
6fd001c660
chore: eslint prune-suppressions ( #31526 )
2026-01-26 15:31:19 +08:00
e8e386a6b9
fix: Add vertical scrolling support for floating elements. ( #30897 )
...
Co-authored-by: zhaiguangpeng <zhaiguangpeng@didiglobal.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-01-26 15:17:42 +08:00
eba5eac3fa
refactor: api/controllers/console/setup.py to ov3 ( #31465 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-01-26 15:04:33 +08:00