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
33a830cbc9
refactor(api): rename placeholder to default_value in various parts
...
Previously the fields / classes are named with `placeholder`. However,
the actual purpose is to use as default values. This commit addresses
this problem by correcting names for relevant fields / classes.
- FormInputPlaceholder
- FormInput.placeholder
- HumanInputRequiredResponse.resolved_placeholder_values
- HumanInputFormDefinition.resolved_placeholder_values
- FormCreateParams.resolved_placeholder_values
- HumanInputRequired.resolved_placeholder_values
- The `resolved_placeholder_values` argument of _create_human_input_delivery_test_form
- The `resolved_placeholder_values` inside _jsonify_form_definition
2026-01-23 15:05:18 +08:00
afdf2397f2
Change the is_resumption field in WorkflowStarted event into reason (vibe-kanban 19ac040e)
...
Reason should be an enumeration with only one member `resumption` currently.
Please update these part of events:
- Graph / Engine Event (GraphRunStartedEvent)
- Queue event (QueueWorkflowStartedEvent)
- SSE response event (WorkflowStartStreamResponse)
Besides, you should remove the `is_resumption` flag for `node_started` events; including:
- Queue Event (`QueueNodeStartedEvent`)
- SSE Event (`NodeStartStreamResponse`)
- Node event (`NodeRunStartedEvent`)
After finishing the changes above, adjust related tests.
You should run the affected tests and ensure they can pass. (You should use `uv run pytest` to run tests)
2026-01-18 21:00:25 +08:00
552b65e36b
fix(api): ensure is_resumption is properly propagated to SSE events
...
While running workflow / chatflow from "Installed Apps" / "Web App"
pages, the `node_started` SSE event is manually serialized from the
pydantic model. This causes the lack of `is_resumption` flag in SSE
events.
This PR addresses the problem by adding a `is_resumption` field to
the serialized dict.
2026-01-14 10:26:57 +08:00
6bcd4ad740
fix(api): Ensure is_resumption for node_started event is correctly set
2026-01-13 09:25:44 +08:00
f988619d2c
feat(api): adjust model fields and cleanup form creation logic
2026-01-08 10:27:52 +08:00
24362ce59e
feat(api): add node_title to HumanInputFormFilled events
2026-01-06 16:48:31 +08:00
184f7ab144
WIP: feat(api): always use form_token to submit human input form
2026-01-06 08:53:24 +08:00
3ab1ad6530
WIP: feat(api): Implement HumanInputFormFilled event
2026-01-04 10:25:00 +08:00
6337a9a125
WIP: feat(api): add is_resumption to node_started and workflow_started events
2026-01-04 01:10:50 +08:00
f4642f85b7
fix(api): expose resolved_placeholder_values in HUMAN_INPUT_REQUIRED event
2025-12-31 11:29:04 +08:00
37dd61558c
feat(api): Implement HITL for Workflow, add is_resumption for start event
2025-12-30 16:40:08 +08:00
dddcf1de6c
WIP: api debugging
2025-12-26 12:33:30 +08:00
43348ce1a6
WIP: P4
2025-12-26 11:39:28 +08:00
e47059514a
WIP: P3
2025-12-26 11:36:40 +08:00
4f48b8a57d
WIP: P2
2025-12-26 11:36:19 +08:00
2e1efd62e1
revert: "fix(ops): add streaming metrics and LLM span for agent-chat traces" ( #29469 )
2025-12-11 12:53:37 +08:00
e8f93380d1
Fix validation ( #28985 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-12-02 10:25:52 +08:00
d162f7e5ef
feat(api): automatically NODE_TYPE_CLASSES_MAPPING generation from node class definitions ( #28525 )
2025-12-01 14:14:19 +08:00
1e23957657
fix(ops): add streaming metrics and LLM span for agent-chat traces ( #28320 )
...
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-11-26 22:45:20 +08:00
b76e17b25d
feat: introduce trigger functionality ( #27644 )
...
Signed-off-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: Stream <Stream_2@qq.com >
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com >
Co-authored-by: zhsama <torvalds@linux.do >
Co-authored-by: Harry <xh001x@hotmail.com >
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com >
Co-authored-by: yessenia <yessenia.contact@gmail.com >
Co-authored-by: hjlarry <hjlarry@163.com >
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: WTW0313 <twwu@dify.ai >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-11-12 17:59:37 +08:00
fd255e81e1
feat(api): Introduce WorkflowResumptionContext for pause state management ( #28122 )
...
Certain metadata (including but not limited to `InvokeFrom`, `call_depth`, and `streaming`) is required when resuming a paused workflow. However, these fields are not part of `GraphRuntimeState` and were not saved in the previous
implementation of `PauseStatePersistenceLayer`.
This commit addresses this limitation by introducing a `WorkflowResumptionContext` model that wraps both the `*GenerateEntity` and `GraphRuntimeState`. This approach provides:
- A structured container for all necessary resumption data
- Better separation of concerns between execution state and persistence
- Enhanced extensibility for future metadata additions
- Clearer naming that distinguishes from `GraphRuntimeState`
The `WorkflowResumptionContext` model makes extending the pause state easier while maintaining backward compatibility and proper version management for the entire execution state ecosystem.
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-11-12 17:00:02 +08:00
c8e9edc024
refactor(api): set default value for EasyUIBasedAppGenerateEntity.query ( #27712 )
2025-11-04 10:22:43 +08:00
1e9142c213
feat: enhance tencent trace integration with LLM core metrics ( #27126 )
...
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-10-29 15:53:30 +08:00
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
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
08dd3f7b50
Fix basedpyright type errors ( #25435 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-10 01:54:26 +08:00
2ac7a9c8fc
Chore: thanks to bump-pydantic ( #25437 )
2025-09-09 20:07:17 +08:00
9d5956cef8
[Chore/Refactor] Switch from MyPy to Basedpyright for type checking ( #25047 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-09-03 11:52:26 +08:00
5c01dd97e8
clean typos words. ( #24667 )
...
Signed-off-by: zhanluxianshen <zhanluxianshen@163.com >
2025-08-28 15:23:59 +08:00
5ab6bc283c
[CHORE]: x: T = None to x: Optional[T] = None ( #24217 )
2025-08-21 21:58:39 +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
2dbf20a3e9
fix: resolve circular import in AppGenerateEntity ( #23731 )
2025-08-11 15:38:28 +08:00
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
a6ea15e63c
Refactor/message cycle manage and knowledge retrieval ( #20460 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 14:36:44 +08:00
32e779eef3
refactor(workflow): Rename NodeRunMetadataKey to WorkflowNodeExecutionMetadataKey ( #20457 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 04:47:56 +08:00
482e50aae9
Refactor/remove db from cycle manager ( #20455 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-30 04:34:13 +08:00
d31235ca13
feat: Introduce WorkflowExecution Domain Entity and Repository, Replace WorkflowRun Direct Usage, and Unify Stream Response Logic ( #20067 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2025-05-21 22:01:53 +08:00
4977bb21ec
feat(workflow): domain model for workflow node execution ( #19430 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-05-17 00:56:16 +08:00
5e2b3b34e5
issue: #17056 : Add a reason field to the message_replace event ( #17195 )
...
Co-authored-by: 聂政 <niezheng@pjlab.org.cn >
2025-04-25 10:08:06 +08:00
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
490b6d092e
Fix/plugin race condition ( #14253 )
2025-02-25 12:20:47 +08:00
403e2d58b9
Introduce Plugins ( #13836 )
...
Signed-off-by: yihong0618 <zouzou0208@gmail.com >
Signed-off-by: -LAN- <laipz8200@outlook.com >
Signed-off-by: xhe <xw897002528@gmail.com >
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: takatost <takatost@gmail.com >
Co-authored-by: kurokobo <kuro664@gmail.com >
Co-authored-by: Novice Lee <novicelee@NoviPro.local >
Co-authored-by: zxhlyh <jasonapring2015@outlook.com >
Co-authored-by: AkaraChen <akarachen@outlook.com >
Co-authored-by: Yi <yxiaoisme@gmail.com >
Co-authored-by: Joel <iamjoel007@gmail.com >
Co-authored-by: JzoNg <jzongcode@gmail.com >
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: Hiroshi Fujita <fujita-h@users.noreply.github.com >
Co-authored-by: AkaraChen <85140972+AkaraChen@users.noreply.github.com >
Co-authored-by: NFish <douxc512@gmail.com >
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com >
Co-authored-by: 非法操作 <hjlarry@163.com >
Co-authored-by: Novice <857526207@qq.com >
Co-authored-by: Hiroki Nagai <82458324+nagaihiroki-git@users.noreply.github.com >
Co-authored-by: Gen Sato <52241300+halogen22@users.noreply.github.com >
Co-authored-by: eux <euxuuu@gmail.com >
Co-authored-by: huangzhuo1949 <167434202+huangzhuo1949@users.noreply.github.com >
Co-authored-by: huangzhuo <huangzhuo1@xiaomi.com >
Co-authored-by: lotsik <lotsik@mail.ru >
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com >
Co-authored-by: nite-knite <nkCoding@gmail.com >
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com >
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: gakkiyomi <gakkiyomi@aliyun.com >
Co-authored-by: CN-P5 <heibai2006@gmail.com >
Co-authored-by: CN-P5 <heibai2006@qq.com >
Co-authored-by: Chuehnone <1897025+chuehnone@users.noreply.github.com >
Co-authored-by: yihong <zouzou0208@gmail.com >
Co-authored-by: Kevin9703 <51311316+Kevin9703@users.noreply.github.com >
Co-authored-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: Boris Feld <lothiraldan@gmail.com >
Co-authored-by: mbo <himabo@gmail.com >
Co-authored-by: mabo <mabo@aeyes.ai >
Co-authored-by: Warren Chen <warren.chen830@gmail.com >
Co-authored-by: JzoNgKVO <27049666+JzoNgKVO@users.noreply.github.com >
Co-authored-by: jiandanfeng <chenjh3@wangsu.com >
Co-authored-by: zhu-an <70234959+xhdd123321@users.noreply.github.com >
Co-authored-by: zhaoqingyu.1075 <zhaoqingyu.1075@bytedance.com >
Co-authored-by: 海狸大師 <86974027+yenslife@users.noreply.github.com >
Co-authored-by: Xu Song <xusong.vip@gmail.com >
Co-authored-by: rayshaw001 <396301947@163.com >
Co-authored-by: Ding Jiatong <dingjiatong@gmail.com >
Co-authored-by: Bowen Liang <liangbowen@gf.com.cn >
Co-authored-by: JasonVV <jasonwangiii@outlook.com >
Co-authored-by: le0zh <newlight@qq.com >
Co-authored-by: zhuxinliang <zhuxinliang@didiglobal.com >
Co-authored-by: k-zaku <zaku99@outlook.jp >
Co-authored-by: luckylhb90 <luckylhb90@gmail.com >
Co-authored-by: hobo.l <hobo.l@binance.com >
Co-authored-by: jiangbo721 <365065261@qq.com >
Co-authored-by: 刘江波 <jiangbo721@163.com >
Co-authored-by: Shun Miyazawa <34241526+miya@users.noreply.github.com >
Co-authored-by: EricPan <30651140+Egfly@users.noreply.github.com >
Co-authored-by: crazywoola <427733928@qq.com >
Co-authored-by: sino <sino2322@gmail.com >
Co-authored-by: Jhvcc <37662342+Jhvcc@users.noreply.github.com >
Co-authored-by: lowell <lowell.hu@zkteco.in >
Co-authored-by: Boris Polonsky <BorisPolonsky@users.noreply.github.com >
Co-authored-by: Ademílson Tonato <ademilsonft@outlook.com >
Co-authored-by: Ademílson Tonato <ademilson.tonato@refurbed.com >
Co-authored-by: IWAI, Masaharu <iwaim.sub@gmail.com >
Co-authored-by: Yueh-Po Peng (Yabi) <94939112+y10ab1@users.noreply.github.com >
Co-authored-by: Jason <ggbbddjm@gmail.com >
Co-authored-by: Xin Zhang <sjhpzx@gmail.com >
Co-authored-by: yjc980121 <3898524+yjc980121@users.noreply.github.com >
Co-authored-by: heyszt <36215648+hieheihei@users.noreply.github.com >
Co-authored-by: Abdullah AlOsaimi <osaimiacc@gmail.com >
Co-authored-by: Abdullah AlOsaimi <189027247+osaimi@users.noreply.github.com >
Co-authored-by: Yingchun Lai <laiyingchun@apache.org >
Co-authored-by: Hash Brown <hi@xzd.me >
Co-authored-by: zuodongxu <192560071+zuodongxu@users.noreply.github.com >
Co-authored-by: Masashi Tomooka <tmokmss@users.noreply.github.com >
Co-authored-by: aplio <ryo.091219@gmail.com >
Co-authored-by: Obada Khalili <54270856+obadakhalili@users.noreply.github.com >
Co-authored-by: Nam Vu <zuzoovn@gmail.com >
Co-authored-by: Kei YAMAZAKI <1715090+kei-yamazaki@users.noreply.github.com >
Co-authored-by: TechnoHouse <13776377+deephbz@users.noreply.github.com >
Co-authored-by: Riddhimaan-Senapati <114703025+Riddhimaan-Senapati@users.noreply.github.com >
Co-authored-by: MaFee921 <31881301+2284730142@users.noreply.github.com >
Co-authored-by: te-chan <t-nakanome@sakura-is.co.jp >
Co-authored-by: HQidea <HQidea@users.noreply.github.com >
Co-authored-by: Joshbly <36315710+Joshbly@users.noreply.github.com >
Co-authored-by: xhe <xw897002528@gmail.com >
Co-authored-by: weiwenyan-dev <154779315+weiwenyan-dev@users.noreply.github.com >
Co-authored-by: ex_wenyan.wei <ex_wenyan.wei@tcl.com >
Co-authored-by: engchina <12236799+engchina@users.noreply.github.com >
Co-authored-by: engchina <atjapan2015@gmail.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: 呆萌闷油瓶 <253605712@qq.com >
Co-authored-by: Kemal <kemalmeler@outlook.com >
Co-authored-by: Lazy_Frog <4590648+lazyFrogLOL@users.noreply.github.com >
Co-authored-by: Yi Xiao <54782454+YIXIAO0@users.noreply.github.com >
Co-authored-by: Steven sun <98230804+Tuyohai@users.noreply.github.com >
Co-authored-by: steven <sunzwj@digitalchina.com >
Co-authored-by: Kalo Chin <91766386+fdb02983rhy@users.noreply.github.com >
Co-authored-by: Katy Tao <34019945+KatyTao@users.noreply.github.com >
Co-authored-by: depy <42985524+h4ckdepy@users.noreply.github.com >
Co-authored-by: 胡春东 <gycm520@gmail.com >
Co-authored-by: Junjie.M <118170653@qq.com >
Co-authored-by: MuYu <mr.muzea@gmail.com >
Co-authored-by: Naoki Takashima <39912547+takatea@users.noreply.github.com >
Co-authored-by: Summer-Gu <37869445+gubinjie@users.noreply.github.com >
Co-authored-by: Fei He <droxer.he@gmail.com >
Co-authored-by: ybalbert001 <120714773+ybalbert001@users.noreply.github.com >
Co-authored-by: Yuanbo Li <ybalbert@amazon.com >
Co-authored-by: douxc <7553076+douxc@users.noreply.github.com >
Co-authored-by: liuzhenghua <1090179900@qq.com >
Co-authored-by: Wu Jiayang <62842862+Wu-Jiayang@users.noreply.github.com >
Co-authored-by: Your Name <you@example.com >
Co-authored-by: kimjion <45935338+kimjion@users.noreply.github.com >
Co-authored-by: AugNSo <song.tiankai@icloud.com >
Co-authored-by: llinvokerl <38915183+llinvokerl@users.noreply.github.com >
Co-authored-by: liusurong.lsr <liusurong.lsr@alibaba-inc.com >
Co-authored-by: Vasu Negi <vasu-negi@users.noreply.github.com >
Co-authored-by: Hundredwz <1808096180@qq.com >
Co-authored-by: Xiyuan Chen <52963600+GareArc@users.noreply.github.com >
2025-02-17 17:05:13 +08:00
62f792ea14
fix: ensure workflow_run_id is always set and improve handling in Wor… ( #12264 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
2024-12-31 17:02:44 +08:00
56e15d09a9
feat: mypy for all type check ( #10921 )
2024-12-24 18:38:51 +08:00
c1aa55f3ea
fix: remove the unused retry index field ( #11903 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: Novice Lee <novicelee@NoviPro.local >
Co-authored-by: -LAN- <laipz8200@outlook.com >
2024-12-23 14:32:11 +08:00
7abc7fa573
Feat: Retry on node execution errors ( #11871 )
...
Co-authored-by: Novice Lee <novicelee@NoviPro.local >
2024-12-20 14:14:06 +08:00