heyszt and GitHub
bdccbb6e86
feat: add GraphEngine layer node execution hooks ( #28583 )
2025-12-16 13:26:31 +08:00
QuantumGhost and GitHub
91667e3c1d
feat(api): Implement EventManager error logging and add coverage ( #29204 )
...
- Ensure `EventManager._notify_layers` logs exceptions instead of silently swallowing them
so GraphEngine layer failures surface for debugging
- Introduce unit tests to assert the logger captures the runtime error when collecting events
- Enable the `S110` lint rule to catch `try-except-pass` patterns
- Add proper error logging for existing `try-except-pass` blocks.
2025-12-08 09:40:40 +08:00
1c1f124891
Enhanced GraphEngine Pause Handling ( #28196 )
...
This commit:
1. Convert `pause_reason` to `pause_reasons` in `GraphExecution` and relevant classes. Change the field from a scalar value to a list that can contain multiple `PauseReason` objects, ensuring all pause events are properly captured.
2. Introduce a new `WorkflowPauseReason` model to record reasons associated with a specific `WorkflowPause`.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-11-26 19:59:34 +08:00
6efdc94661
refactor: consume events after pause/abort and improve API clarity ( #28328 )
...
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
2025-11-18 19:04:11 +08:00
123bb3ec08
When graph_engine worker run exception, keep the node_id for deep res… ( #26205 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com >
2025-11-12 15:03:45 +08:00
a1c0bd7a1c
feat(api): Introduce workflow pause state management ( #27298 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-10-30 14:41:09 +08:00
-LAN- and GitHub
f45c18ee35
fix(graph_engine): NodeRunRetrieverResourceEvent is not handled ( #27405 )
2025-10-24 16:20:27 +08:00
-LAN- and GitHub
578247ffbc
feat(graph_engine): Support pausing workflow graph executions ( #26585 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-10-19 21:33:41 +08:00
-LAN- and GitHub
24612adf2c
Fix dispatcher idle hang and add pytest timeouts ( #26998 )
2025-10-16 22:15:03 +08:00
1d8cca4fa2
Fix: check external commands after node completion ( #26891 )
...
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-15 16:47:43 +08:00
kenwoodjw and GitHub
c39dae06d4
fix: workflow token usage ( #26723 )
...
Signed-off-by: kenwoodjw <blackxin55+@gmail.com >
2025-10-15 10:39:51 +08:00
24cd7bbc62
fix RetrievalMethod StrEnum ( #26768 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-13 10:29:37 +08:00
ab2eacb6c1
use model_validate ( #26182 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-10-10 17:30:13 +09:00
-LAN- and GitHub
d00a72a435
fix(graph_engine): block response nodes during streaming ( #26364 )
2025-09-28 17:46:39 +08:00
非法操作 and GitHub
272102c06d
doc: fix graph engine readme ( #26337 )
2025-09-28 13:37:51 +08:00
quicksand and GitHub
407323f817
fix(api): graph engine debug logging NodeRunRetryEvent not effective ( #26085 )
2025-09-23 13:46:45 +08:00
-LAN- and GitHub
2e2c87c5a1
fix(graph_engine): error strategy fall. ( #26078 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-09-23 01:51:43 +08:00
f4522fd695
try contextmanager ( #26074 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-23 00:35:54 +08:00
Yongtao Huang and GitHub
b3dafd913b
Chore: correct inconsistent logging and typo ( #25945 )
2025-09-19 10:36:16 +08:00
+10
85cda47c70
feat: knowledge pipeline ( #25360 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
Co-authored-by: jyong <718720800@qq.com >
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com >
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: quicksand <quicksandzn@gmail.com >
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zxhlyh <jasonapring2015@outlook.com >
Co-authored-by: Yongtao Huang <yongtaoh2022@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: nite-knite <nkCoding@gmail.com >
Co-authored-by: Hanqing Zhao <sherry9277@gmail.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Harry <xh001x@hotmail.com >
2025-09-18 12:49:10 +08:00
bab4975809
chore: add ast-grep rule to convert Optional[T] to T | None ( #25560 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-15 13:06:33 +08:00
a13d7987e0
chore: adopt StrEnum and auto() for some string-typed enums ( #25129 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
2025-09-12 21:14:26 +08:00
a78339a040
remove bare list, dict, Sequence, None, Any ( #25058 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: -LAN- <laipz8200@outlook.com >
2025-09-06 03:32:23 +08:00
ac057a2d40
Chore: remove dead code in class Graph ( #22791 )
...
Co-authored-by: Yongtao Huang <99629139+hyongtao-db@users.noreply.github.com >
2025-09-04 10:30:04 +08:00
willzhao and GitHub
ffba341258
[CHORE]: remove redundant-cast ( #24807 )
2025-09-01 14:05:32 +08:00
湛露先生 and GitHub
5c01dd97e8
clean typos words. ( #24667 )
...
Signed-off-by: zhanluxianshen <zhanluxianshen@163.com >
2025-08-28 15:23:59 +08:00
-LAN- and GitHub
da9af7b547
[Chore/Refactor] Use centralized naive_utc_now for UTC datetime operations ( #24352 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-08-22 23:53:05 +08:00
106ab7f2a8
Fix: safe defaults for BaseModel dict fields ( #24098 )
...
Co-authored-by: Yongtao Huang <99629139+hyongtao-db@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-21 21:38:55 +08:00
-LAN- and GitHub
577062b93a
refactor: simplify variable pool key structure and improve type safety ( #23732 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-08-11 18:10:04 +08:00
Asuka Minato and GitHub
a189d293f8
make logging not use f-str, change others to f-str ( #22882 )
2025-07-25 10:32:48 +08:00
460a825ef1
refactor: decouple Node and NodeData ( #22581 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
2025-07-18 10:08:51 +08:00
QuantumGhost and GitHub
2c1ab4879f
refactor(api): Separate SegmentType for Integer/Float to Enable Pydantic Serialization ( #22025 )
...
refactor(api): Separate SegmentType for Integer/Float to Enable Pydantic Serialization (#22025 )
This PR addresses serialization issues in the VariablePool model by separating the `value_type` tags for `IntegerSegment`/`FloatSegment` and `IntegerVariable`/`FloatVariable`. Previously, both Integer and Float types shared the same `SegmentType.NUMBER` tag, causing conflicts during serialization.
Key changes:
- Introduce distinct `value_type` tags for Integer and Float segments/variables
- Add `VariableUnion` and `SegmentUnion` types for proper type discrimination
- Leverage Pydantic's discriminated union feature for seamless serialization/deserialization
- Enable accurate serialization of data structures containing these types
Closes #22024 .
2025-07-16 12:31:37 +08:00
湛露先生 and GitHub
edf5fd28c9
update worklow events logs. ( #19871 )
...
Signed-off-by: zhanluxianshen <zhanluxianshen@163.com >
2025-07-10 14:21:34 +08:00
-LAN- and GitHub
8f723697ef
refactor(graph_engine): Take GraphRuntimeState out of GraphEngine ( #21882 )
2025-07-07 13:15:18 +08:00
QuantumGhost and GitHub
268da31332
fix(api): adding variable to variable pool recursively while loading draft variables. ( #21478 )
...
This PR fix the issue that `ObjectSegment` are not recursively added to the draft variable pool while loading draft variables from database. It also fixes an issue about loading variables with more than two elements in the its selector.
Enhances #19735 .
Closes #21477 .
2025-06-25 12:39:22 +08:00
QuantumGhost and GitHub
10b738a296
feat: Persist Variables for Enhanced Debugging Workflow ( #20699 )
...
This pull request introduces a feature aimed at improving the debugging experience during workflow editing. With the addition of variable persistence, the system will automatically retain the output variables from previously executed nodes. These persisted variables can then be reused when debugging subsequent nodes, eliminating the need for repetitive manual input.
By streamlining this aspect of the workflow, the feature minimizes user errors and significantly reduces debugging effort, offering a smoother and more efficient experience.
Key highlights of this change:
- Automatic persistence of output variables for executed nodes.
- Reuse of persisted variables to simplify input steps for nodes requiring them (e.g., `code`, `template`, `variable_assigner`).
- Enhanced debugging experience with reduced friction.
Closes #19735 .
2025-06-24 09:05:29 +08:00
-LAN- and GitHub
879f839d75
refactor(graph_engine): Merge duplicated if block ( #20784 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-06-18 14:33:29 +08:00
-LAN- and GitHub
0dcacdf83d
feat: add a flask_context_manager. ( #21061 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-06-17 16:31:29 +08:00
-LAN- and GitHub
72fdafc180
refactor: Replaces direct DB session usage with context managers ( #20569 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-06-03 16:16:06 +08:00
-LAN- and GitHub
a6ea15e63c
Refactor/message cycle manage and knowledge retrieval ( #20460 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 14:36:44 +08:00
-LAN- and GitHub
32e779eef3
refactor(workflow): Rename NodeRunMetadataKey to WorkflowNodeExecutionMetadataKey ( #20457 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 04:47:56 +08:00
-LAN- and GitHub
482e50aae9
Refactor/remove db from cycle manager ( #20455 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 04:34:13 +08:00
-LAN- and GitHub
f233a64eb5
fix(workflow): fetch user failed when workflow run in parallel mode ( #20321 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-27 22:41:07 +08:00
Bowen Liang and GitHub
cbc8ebd8f5
chore: bump pydantic to 2.11 and pydantic-settings to 2.9 ( #15049 )
2025-05-08 17:39:51 +08:00
Yongtao Huang and GitHub
5d72003ebb
Remove dead code ( #17899 )
2025-04-11 20:33:52 +08:00
-LAN- and GitHub
ec29bcf013
feat(graph_engine): yield control to other threads before node run. ( #17689 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-04-09 17:02:47 +08:00
fe0d932f50
fix: fail-branch stream output error ( #13401 )
...
Co-authored-by: Novice Lee <novicelee@NoviPro.local >
2025-03-17 19:35:37 +08:00
5646442931
fix: iteration total tokens calculate error ( #15813 )
...
Co-authored-by: 刘江波 <jiangbo721@163.com >
2025-03-14 17:44:24 +08:00
Novice and GitHub
778861f461
fix: agent node can't use in parallel ( #15047 )
2025-03-06 13:13:24 +08:00
2c17bb2c36
Feature/newnew workflow loop node ( #14863 )
...
Co-authored-by: arkunzz <4873204@qq.com >
2025-03-05 17:41:15 +08:00