-LAN-
fe3f03e50a
feat: add property-based access control to GraphRuntimeState
...
- Replace direct field access with private attributes and property decorators
- Implement deep copy protection for mutable objects (dict, LLMUsage)
- Add helper methods: set_output(), get_output(), update_outputs()
- Add increment_node_run_steps() and add_tokens() convenience methods
- Update loop_node and event_handlers to use new accessor methods
- Add comprehensive unit tests for immutability and validation
- Ensure backward compatibility with existing property access patterns
2025-09-04 02:08:58 +08:00
-LAN-
9c96b23d55
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-09-04 00:27:08 +08:00
Yongtao Huang
db53656a45
Fix jsonschema compliance: use number instead of float ( #25049 )
...
Signed-off-by: Yongtao Huang<yongtaoh2022@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-03 22:27:41 +08:00
jyong
d4aed3df5c
Merge branch 'feat/queue-based-graph-engine' into feat/rag-2
...
# Conflicts:
# api/core/memory/token_buffer_memory.py
# api/core/rag/extractor/notion_extractor.py
# api/core/repositories/sqlalchemy_workflow_node_execution_repository.py
# api/core/variables/variables.py
# api/core/workflow/graph/graph.py
# api/core/workflow/graph_engine/entities/event.py
# api/services/dataset_service.py
# web/app/components/app-sidebar/index.tsx
# web/app/components/base/tag-management/selector.tsx
# web/app/components/base/toast/index.tsx
# web/app/components/datasets/create/website/index.tsx
# web/app/components/datasets/create/website/jina-reader/base/options-wrap.tsx
# web/app/components/workflow/header/version-history-button.tsx
# web/app/components/workflow/hooks/use-inspect-vars-crud-common.ts
# web/app/components/workflow/hooks/use-workflow-interactions.ts
# web/app/components/workflow/panel/version-history-panel/index.tsx
# web/service/base.ts
2025-09-03 15:01:06 +08:00
-LAN-
9d004a0971
test: fix test
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-09-03 02:11:37 +08:00
-LAN-
77a9a73d0d
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-09-03 01:33:17 +08:00
-LAN-
a32dde5428
Fix: Resolve workflow_node_execution primary key conflicts with UUID v7 ( #24643 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-09-02 14:18:29 +08:00
QuantumGhost
e2ae89e08d
fix(tests): fix broken tests and linter issues
2025-09-01 14:55:35 +08:00
-LAN-
88622f70fb
refactor(graph_engine): Move setup methods into __init__
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-09-01 12:08:03 +08:00
-LAN-
a5cb9d2b73
refactor(graph_engine): inline output_registry into response_coordinator
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-09-01 03:59:53 +08:00
-LAN-
546d75d84d
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-09-01 00:29:28 +08:00
Asuka Minato
24e2b72b71
Update ast-grep pattern for session.query ( #24828 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-31 17:03:51 +08:00
QuantumGhost
e9e7d4f3cd
Merge branch 'feat/rag-2' into feat/workflow-draft-var-optimize
2025-08-31 15:17:23 +08:00
QuantumGhost
982fd9170c
WIP: test(api): tests for truncation logic
2025-08-31 13:45:16 +08:00
-LAN-
5415d0c6d1
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-08-29 23:17:30 +08:00
Novice
1a34ff8a67
fix: change the mcp server strucutre to support github copilot ( #24788 )
2025-08-29 18:00:58 +08:00
-LAN-
dce4d0ff80
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-08-29 13:22:13 +08:00
jyong
d0dd728e6c
Merge branch 'main' into feat/rag-2
...
# Conflicts:
# api/core/app/entities/queue_entities.py
# api/core/workflow/graph_engine/entities/event.py
2025-08-29 11:29:51 +08:00
Bowen Liang
39064197da
chore: cleanup unnecessary mypy suppressions on imports ( #24712 )
2025-08-28 23:17:25 +08:00
jyong
1db04aa729
Merge branch 'feat/queue-based-graph-engine' into feat/rag-2
2025-08-28 18:12:49 +08:00
-LAN-
bfbb36756a
feat(graph_engine): Add NodeExecutionType.ROOT and auto mark skipped in Graph.init
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-08-28 16:41:51 +08:00
Charles Zhou
0d745c64d8
chore: bump supabase and pyjwt versions and added tests ( #24681 )
2025-08-28 13:45:56 +08:00
Asuka Minato
7995ff1410
Typing test ( #24651 )
2025-08-28 09:36:39 +08:00
-LAN-
635eff2e25
test(graph_engine): remove outdated tests
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-08-28 02:53:19 +08:00
-LAN-
9dc1e9724e
Merge remote-tracking branch 'origin/main' into feat/queue-based-graph-engine
2025-08-28 02:26:40 +08:00
Asuka Minato
4cd00efe3b
add more current_user typing ( #24612 )
2025-08-27 18:19:49 +08:00
jyong
90d72f5ddf
merge new graph engine
2025-08-27 17:46:46 +08:00
jyong
392514fa13
Merge branch 'feat/queue-based-graph-engine' into feat/rag-2
...
# Conflicts:
# api/commands.py
# api/core/app/apps/common/workflow_response_converter.py
# api/core/llm_generator/llm_generator.py
# api/core/plugin/entities/plugin.py
# api/core/plugin/impl/tool.py
# api/core/rag/index_processor/index_processor_base.py
# api/core/workflow/entities/workflow_execution.py
# api/core/workflow/entities/workflow_node_execution.py
# api/core/workflow/enums.py
# api/core/workflow/graph_engine/entities/graph.py
# api/core/workflow/graph_engine/graph_engine.py
# api/core/workflow/nodes/enums.py
# api/services/dataset_service.py
2025-08-27 16:05:59 +08:00
autofix-ci[bot]
86e7cb713c
[autofix.ci] apply automated fixes
2025-08-27 07:38:26 +00:00
-LAN-
0f29244459
fix: test
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-08-27 15:37:37 +08:00
autofix-ci[bot]
48cbf4c78f
[autofix.ci] apply automated fixes
2025-08-27 15:33:30 +08:00
-LAN-
8c35663220
feat: queue-based graph engine
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-08-27 15:33:28 +08:00
twwu
da48e54778
Merge branch 'main' into feat/rag-2
2025-08-27 11:16:27 +08:00
Yeuoly
d5e6e38c58
refactor: unify blob chunk merging logic for plugin tool and agent ( #24575 )
...
Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-26 21:15:23 +08:00
Joel
dac72b078d
feat: support bool type variable frontend ( #24437 )
...
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
2025-08-26 18:16:05 +08:00
Amy
b5c2756261
fix(api):safe reset in db pool, avoid rollback in gevent callback ( #24556 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-26 18:14:06 +08:00
Yongtao Huang
fa753239ad
Refactor: use logger = logging.getLogger(__name__) in logging ( #24515 )
...
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>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
2025-08-26 18:10:31 +08:00
Harry
a282b6cea4
refactor(tests): remove unused TestPerformance class from schema resolver tests
2025-08-26 15:47:34 +08:00
Harry
46019ea927
refactor(resolver): enhance schema reference resolution with improved error handling and caching
2025-08-26 15:47:34 +08:00
Harry
c911ac8c01
refactor(console): add spec controller import and enhance tool output schema resolution
2025-08-26 11:07:12 +08:00
-LAN-
cfb8d224da
fix: standardize authentication error messages to prevent user enumeration ( #24324 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-26 09:46:23 +08:00
非法操作
6010d5f24c
feat: add multi model credentials ( #24451 )
...
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-25 16:12:29 +08:00
Asuka Minato
18dce66443
try flask_restful -> flask_restx ( #24310 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
2025-08-24 13:45:47 +08:00
-LAN-
2e47558f4b
fix: correct agent node token counting to properly separate prompt and completion tokens ( #24368 )
2025-08-23 11:00:14 +08:00
-LAN-
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
-LAN-
77223e4df4
refactor: simplify repository factory with Django-style import_string ( #24354 )
2025-08-22 21:56:25 +08:00
jiangbo721
805b698c2e
Feat/chat message image first for agent and advanced_chat APP ( #23796 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-22 16:42:15 +08:00
Eric Guo
455f842785
Flask 3.1.2 upgrade fix by Avoids using current_user in background thread ( #24290 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-22 14:47:13 +08:00
Yongtao Huang
6b466a8469
[Test] add unit tests for web_reader_tool.py ( #24309 )
...
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-22 09:28:00 +08:00
Guangdong Liu
1abf1240b2
refactor: replace try-except blocks with contextlib.suppress for cleaner exception handling ( #24284 )
2025-08-21 18:18:49 +08:00
Yongtao Huang
ad8e82ee1d
[Test] add unit tests for ProviderConfigEncrypter encrypt/mask/decrypt ( #24280 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-21 16:05:53 +08:00
Yongtao Huang
6b5c2bea4d
Fix: correctly match http/https URLs in image upload file ( #24180 )
2025-08-19 22:44:22 +08:00
-LAN-
052d0e059e
feat: add Redis SSL/TLS certificate authentication support ( #23624 )
2025-08-18 10:59:07 +08:00
Yongtao Huang
c9e18346ce
Chore: remove empty files and unused code ( #23990 )
...
Co-authored-by: Yongtao Huang <99629139+hyongtao-db@users.noreply.github.com>
2025-08-15 16:28:41 +08:00
NeatGuyCoding
11fdcb18c6
feature: add test for tool engine serialization ( #23951 )
2025-08-15 09:12:29 +08:00
Guangdong Liu
d4756ba659
Fix multipart/form-data boundary issue in HTTP Call node ( #23903 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-08-14 10:01:27 +08:00
Yongtao Huang
bf2f03f911
Restructure the File errors in controller ( #23801 )
...
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-13 17:06:07 +08:00
QuantumGhost
e600070a61
feat(api): auto-delete WorkflowDraftVariable when app is deleted ( #23737 )
...
This commit introduces a background task that automatically deletes `WorkflowDraftVariable` records when
their associated workflow apps are deleted.
Additionally, it adds a new cleanup script
`cleanup-orphaned-draft-variables` to remove existing orphaned draft variables from the database.
2025-08-13 11:13:08 +08:00
xinlmain
b3399642c5
feat: Add an asynchronous repository to improve workflow performance ( #20050 )
...
Co-authored-by: liangxin <liangxin@shein.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: liangxin <xinlmain@gmail.com>
2025-08-13 02:28:06 +08:00
Jason Young
b38f195a0d
test: add comprehensive test suite for rate limiting module ( #23765 )
2025-08-12 10:05:30 +08:00
-LAN-
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
-LAN-
6900b08134
fix: sync missing conversation variables for existing conversations ( #23649 )
2025-08-09 22:42:18 +08:00
-LAN-
cbe0d9d053
fix: conversation pinned filter returns incorrect results when no conversations are pinned ( #23670 )
2025-08-09 22:40:28 +08:00
lyzno1
2edd32fdea
fix: resolve AppCard description overlap with tag area ( #23585 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-08 09:05:55 +08:00
lyzno1
d98071a088
feat: add Service API file preview endpoint ( #23534 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-08-07 21:44:29 +08:00
ghmark675
ad61b42494
fix(node): fix unexpected extra equals sign in HTTP params ( #23474 )
2025-08-07 09:04:09 +08:00
rouxiaomin
40a11b6942
feat(api):Enhance the scope of expired data cleanup table in the Dify… ( #23414 )
2025-08-05 19:57:43 +08:00
Yongtao Huang
be914438a5
Fix: incorrect array element validation in SegmentType ( #23289 )
2025-08-01 22:46:50 +08:00
Jason Young
afac1fe590
Add comprehensive security tests for file upload controller ( #23102 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-07-31 10:32:16 +08:00
Ali Saleh
142ab74784
feat: Enable Tracing Support For Phoenix Cloud Instance ( #23196 )
2025-07-30 15:58:26 -07:00
Sn0rt
bbdeb15501
fix: Support URL-encoded passwords with special characters in CELERY_BROKER_URL ( #23163 )
...
Signed-off-by: Sn0rt <wangguohao.2009@gmail.com>
2025-07-30 16:39:54 +08:00
lyzno1
0ea010d7ee
fix: metadata API nullable validation consistency issue ( #23133 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-07-30 10:33:24 +08:00
NeatGuyCoding
ae28ca0b8d
minor fix: wrong assignment ( #23103 )
2025-07-29 16:36:21 +08:00
chenguowei
fce126b206
fix(api): fix incorrect path handling in Langfuse integration ( #22766 )
...
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
2025-07-28 15:37:13 +08:00
Mike Zixuan HE
bd5b938571
feat: Support allOf in OpenAPI properties inside schema #22946 ( #22975 )
2025-07-28 11:03:19 +08:00
Asuka Minato
a189d293f8
make logging not use f-str, change others to f-str ( #22882 )
2025-07-25 10:32:48 +08:00
Jason Young
88952cbb7a
test: add comprehensive tests for file_factory build_from_mapping ( #22926 )
2025-07-25 10:30:19 +08:00
Yeuoly
206bc4b36d
chore: enhance error message when handling PluginInvokeError ( #22908 )
2025-07-24 21:58:39 +08:00
Asuka Minato
ef51678c73
orm filter -> where ( #22801 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-24 00:57:45 +08:00
Jason Young
8c3e390172
test: add comprehensive integration tests for API key authentication system ( #22856 )
2025-07-23 23:14:40 +08:00
Asuka Minato
6d3e198c3c
Mapped column ( #22644 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-23 00:39:59 +08:00
-LAN-
0f4809b9b8
refactor: centralize email internationalization handling ( #22752 )
...
Co-authored-by: Claude <noreply@anthropic.com>
2025-07-23 00:26:00 +08:00
qfl
841e53dbbe
feat(trace): support external trace id propagation ( #22623 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-22 15:17:43 +08:00
Jason Young
db09e7386f
test: add comprehensive unit tests for AuthType ( #22742 )
2025-07-22 08:12:38 +08:00
Jason Young
c7382150b5
test: add comprehensive unit tests for Firecrawl and Watercrawl auth providers ( #22705 )
2025-07-21 15:58:36 +08:00
Jason Young
6248658c04
fix: resolve Redis mock import error in test configuration ( #22663 )
2025-07-20 11:06:38 +08:00
Jason Young
274142c4c2
test: add comprehensive unit tests for auth service module ( #22662 )
2025-07-20 11:06:32 +08:00
Aryan Raj
ce794335e9
Fix/replace datetime patterns with naive utc now ( #22654 )
2025-07-20 11:05:53 +08:00
Jason Young
f2389771cf
test: add comprehensive API key authentication service tests ( #22572 )
2025-07-18 13:52:22 +08:00
-LAN-
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
-LAN-
1715dd4320
refactor: Fix some type error ( #22594 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-07-18 09:26:29 +08:00
-LAN-
b88dd17fc1
feat(workflow_cycle_manager): Removes redundant repository methods and adds caching ( #22597 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-07-18 09:26:05 +08:00
Maries
a4ef900916
Support OAuth Integration for Plugin Tools ( #22550 )
...
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: Yeuoly <admin@srmxy.cn>
2025-07-17 17:18:44 +08:00
Jason Young
74caebac32
test: add comprehensive OAuth authentication unit tests ( #22528 )
2025-07-17 14:20:59 +08:00
NeatGuyCoding
c3037c5491
minor code fix: remove duplicate type check branch ( #22536 )
2025-07-17 13:20:31 +08:00
quicksand
e4ae1e2b94
fix (ci) : remove test_url_signer ( #22525 )
2025-07-17 11:12:14 +08:00
QuantumGhost
ddfd8c8525
feat(api): add UUIDv7 implementation in SQL and Python ( #22058 )
...
This PR introduces UUIDv7 implementations in both Python and SQL to establish the foundation for migrating from UUIDv4 to UUIDv7 as proposed in #19754 .
ID generation algorithm of existing models are not changed, and new models should use UUIDv7 for ID generation.
Close #19754 .
2025-07-16 13:07:08 +08:00
QuantumGhost
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
Jason Young
38106074b4
test: add comprehensive unit tests for console authentication and authorization decorators ( #22439 )
2025-07-16 10:07:01 +08:00
Jacky Wu
da53bf511f
chore: add SQLALCHEMY_POOL_USE_LIFO option and missing SQLALCHEMY_POOL_PRE_PING env default value. ( #22371 )
2025-07-15 19:46:48 +08:00