Commit Graph

336 Commits

Author SHA1 Message Date
Novice 1a34ff8a67
fix: change the mcp server strucutre to support github copilot (#24788) 2025-08-29 18:00:58 +08:00
Bowen Liang 39064197da
chore: cleanup unnecessary mypy suppressions on imports (#24712) 2025-08-28 23:17:25 +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
Asuka Minato 4cd00efe3b
add more current_user typing (#24612) 2025-08-27 18:19:49 +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
-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
Hao Cheng 32c541a9ed
fix: generate deterministic operationId for root endpoints without one (#19888) 2025-07-15 14:19:55 +08:00
-LAN- 6eb155ae69
feat(api/repo): Allow to config repository implementation (#21458)
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
2025-07-14 14:54:38 +08:00
Jason Young 27e5e2745b
test: add comprehensive unit tests for login decorator (#22294) 2025-07-14 09:34:13 +08:00
Bowen Liang e7388779a1
chore: bump ruff to 0.12.x (#22259) 2025-07-12 20:00:54 +08:00
NeatGuyCoding 9f013f7644
Add unit test for account service (#22278) 2025-07-12 19:58:42 +08:00
Jason Young 253d8e5a5f
test: add comprehensive unit tests for PassportService with exception handling optimization (#22268) 2025-07-12 19:56:20 +08:00
Novice 535fff62f3
feat: add MCP support (#20716)
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
2025-07-10 14:01:34 +08:00
Yongtao Huang 10858ea1dc
Chore: rm useless import and vars (#22108) 2025-07-10 11:47:43 +08:00
NeatGuyCoding 6f8c7a66c8
feat: add redis fallback mechanism #21043 (#21044)
Co-authored-by: tech <cto@sb>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-07-10 10:19:58 +08:00
Jason Young 881a151d30
test: add comprehensive unit tests for encrypter module (#22102) 2025-07-10 10:01:15 +08:00
-LAN- 4cb50f1809
feat(libs): Introduce `extract_tenant_id` (#22086)
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-07-09 17:45:56 +08:00
Jason Young d61ea5a2de
test: add comprehensive unit tests for UrlSigner (#22030) 2025-07-08 21:22:37 +08:00
Jason Young 5c0cb7f912
test: add unit tests for password validation and hashing (#22003) 2025-07-08 10:00:00 +08:00
NeatGuyCoding 53c4912cbb
feat: add unit tests and validation for aliyun tracing (#22012)
Signed-off-by: neatguycoding <15627489+NeatGuyCoding@users.noreply.github.com>
2025-07-08 09:32:30 +08:00
-LAN- 8f723697ef
refactor(graph_engine): Take GraphRuntimeState out of GraphEngine (#21882) 2025-07-07 13:15:18 +08:00
NeatGuyCoding ac69b8b191
refactor: extract common url validator for config_entity.py (#21934)
Signed-off-by: neatguycoding <15627489+NeatGuyCoding@users.noreply.github.com>
2025-07-07 09:34:13 +08:00
Bowen Liang 6663187eca
test:add unit test for api version config (#21919) 2025-07-04 15:33:20 +08:00
Yeuoly 980b0188d2
feat(tests): add structured output parser tests for LLM responses (#21838) 2025-07-03 09:10:04 +08:00
QuantumGhost 89250a36b7
fix(api): files not returned in the answer node (#21807) 2025-07-02 13:54:10 +08:00
QuantumGhost c2e599cd85
fix(api): Fix resetting sys var causing internal server error (#21604)
and sorts draft variables by their creation time, ensures a consist order.
2025-07-02 13:36:35 +08:00
NeatGuyCoding 785d4b3de7
feat: refactor: test_dataset unit tests #21499 (#21502) 2025-06-26 10:07:54 +08:00
Maries 164e5481c5
feat(oauth): plugin oauth service (#21480) 2025-06-25 14:14:30 +08:00
QuantumGhost 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
NeatGuyCoding 94f8e48647
Refactor update dataset (fix #21401) (#21402)
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-25 11:44:35 +08:00
QuantumGhost 501d3b6203
feat(api): Explicitly define version method for all BaseNode subclasses (#21443)
This PR addresses issue #21441 by implementing explicit `version` method definitions for all `BaseNode` subclasses to improve code maintainability.

### Changes

Added explicit `version` method definitions for all `BaseNode` subclasses:

- `QuestionClassifierNode`
- `KnowledgeRetrievalNode` 
- `AgentNode`

Added comprehensive test suite to validate:

1. All subclasses of `BaseNode` have explicitly defined `version` method
2. All subclasses have required `_node_type` property
3. The `(node_type, node_version)` combination is unique across all subclasses
2025-06-24 20:27:22 +08:00
quicksand 45146edb31
fix(document_extractor): xlsx file column int type error (#21408) 2025-06-24 13:42:13 +08:00
QuantumGhost 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
NeatGuyCoding a0a89b562c
Feature:Refactor batch update document status for #21324 (#21325) 2025-06-23 09:49:13 +08:00
Jin 3e7f8bad56
fix: markdown_extractor lost chunks if it starts without a header(#21308) (#21309) 2025-06-21 23:10:00 +08:00
-LAN- 6b1ad634f1
fix(workflow_run): sequence_number race. (#21228)
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-06-19 17:53:49 +08:00
-LAN- 0dcacdf83d
feat: add a flask_context_manager. (#21061)
Signed-off-by: -LAN- <laipz8200@outlook.com>
2025-06-17 16:31:29 +08:00