e94c689dd3
[autofix.ci] apply automated fixes (attempt 2/3)
2026-03-25 05:25:02 +00:00
2ce4c21be2
[autofix.ci] apply automated fixes
2026-03-25 05:20:02 +00:00
21bdb6da47
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-03-25 11:50:33 +08:00
d87263f7c3
refactor: select in console datasets document controller ( #34029 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-25 12:47:25 +09:00
6756745062
Merge branch 'main' into feat/support-agent-sandbox
2026-03-24 17:12:13 +08:00
a844936759
Merge branch 'sandboxed-agent-rebase' into feat/support-agent-sandbox
2026-03-24 15:58:23 +08:00
1674f8c2fb
fix: fix omitted app icon_type updates ( #33988 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-24 15:10:05 +08:00
dd6fde26d0
feat: add runtime upgrade handling and UI components for LLM nodes
2026-03-24 14:26:38 +08:00
8b634a9bee
refactor: use EnumText for ApiToolProvider.schema_type_str and Docume… ( #33983 )
2026-03-24 13:27:50 +09:00
ecd3a964c1
refactor(api): type auth service credentials with TypedDict ( #33867 )
2026-03-24 13:22:17 +09:00
8775003732
Merge branch 'main' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/tests/unit_tests/controllers/console/app/test_message.py
# api/tests/unit_tests/controllers/console/app/test_statistic.py
# api/tests/unit_tests/controllers/console/app/test_workflow_draft_variable.py
# api/tests/unit_tests/controllers/console/auth/test_data_source_bearer_auth.py
# api/tests/unit_tests/controllers/console/auth/test_data_source_oauth.py
# api/tests/unit_tests/controllers/console/auth/test_oauth_server.py
# web/app/components/header/account-setting/data-source-page/data-source-notion/operate/index.tsx
# web/app/components/header/account-setting/data-source-page/data-source-website/config-firecrawl-modal.tsx
# web/app/components/header/account-setting/data-source-page/data-source-website/config-jina-reader-modal.tsx
# web/app/components/header/account-setting/data-source-page/data-source-website/config-watercrawl-modal.tsx
# web/app/components/header/account-setting/data-source-page/panel/config-item.tsx
# web/app/components/header/account-setting/data-source-page/panel/index.tsx
# web/app/components/workflow/nodes/knowledge-retrieval/node.tsx
# web/package.json
# web/pnpm-lock.yaml
2026-03-24 11:19:50 +08:00
5d2cb3cd80
refactor: use EnumText for DocumentSegment.type ( #33979 )
2026-03-24 05:37:51 +09:00
75c3ef82d9
refactor: use EnumText for TenantCreditPool.pool_type ( #33959 )
2026-03-24 02:51:10 +09:00
ed1bd338f1
refactor: update model attribute references from 'model' to 'model_name' across multiple files and introduce new fetch_model_config function in llm_utils.py
2026-03-23 21:17:43 +08:00
ee81ea882b
Merge branch 'feat/support-agent-sandbox' into sandboxed-agent-rebase
2026-03-23 20:19:16 +08:00
2b6f761dfe
refactor: use EnumText for Conversation/Message invoke_from and from_source ( #33901 )
2026-03-23 16:03:35 +09:00
fd124e6d32
Merge main HEAD (segment 5) into sandboxed-agent-rebase
...
Resolve 83 conflicts: 10 backend, 62 frontend, 11 config/lock files.
Preserve sandbox/agent/collaboration features while adopting main's
UI refactorings (Dialog/AlertDialog/Popover), model provider updates,
and enterprise features.
Made-with: Cursor
2026-03-23 14:20:06 +08:00
5041d96bb1
Merge commit 'fb41b215' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# .devcontainer/post_create_command.sh
# api/commands.py
# api/core/agent/cot_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/app/apps/workflow_app_runner.py
# api/core/app/entities/queue_entities.py
# api/core/app/entities/task_entities.py
# api/core/workflow/workflow_entry.py
# api/dify_graph/enums.py
# api/dify_graph/graph/graph.py
# api/dify_graph/graph_events/node.py
# api/dify_graph/model_runtime/entities/message_entities.py
# api/dify_graph/node_events/node.py
# api/dify_graph/nodes/agent/agent_node.py
# api/dify_graph/nodes/base/__init__.py
# api/dify_graph/nodes/base/entities.py
# api/dify_graph/nodes/base/node.py
# api/dify_graph/nodes/llm/entities.py
# api/dify_graph/nodes/llm/node.py
# api/dify_graph/nodes/tool/tool_node.py
# api/pyproject.toml
# api/uv.lock
# web/app/components/base/avatar/__tests__/index.spec.tsx
# web/app/components/base/avatar/index.tsx
# web/app/components/base/date-and-time-picker/time-picker/__tests__/index.spec.tsx
# web/app/components/base/file-uploader/file-from-link-or-local/index.tsx
# web/app/components/base/prompt-editor/index.tsx
# web/app/components/datasets/metadata/edit-metadata-batch/modal.tsx
# web/app/components/header/account-dropdown/index.spec.tsx
# web/app/components/share/text-generation/index.tsx
# web/app/components/workflow/block-selector/tool/action-item.tsx
# web/app/components/workflow/block-selector/trigger-plugin/action-item.tsx
# web/app/components/workflow/hooks/use-edges-interactions.ts
# web/app/components/workflow/hooks/use-nodes-interactions.ts
# web/app/components/workflow/index.tsx
# web/app/components/workflow/nodes/_base/components/editor/code-editor/index.tsx
# web/app/components/workflow/nodes/http/components/key-value/key-value-edit/index.tsx
# web/app/components/workflow/nodes/human-input/components/delivery-method/recipient/email-item.tsx
# web/app/components/workflow/nodes/loop/use-interactions.ts
# web/contract/router.ts
# web/env.ts
# web/eslint-suppressions.json
# web/package.json
# web/pnpm-lock.yaml
2026-03-23 10:52:06 +08:00
b15a9bea21
style: auto-format after segment 3 import migrations
...
Made-with: Cursor
2026-03-23 10:37:02 +08:00
6b75188ddc
fix: resolve import migrations and test failures after segment 3 merge
...
- Migrate core.model_runtime -> dify_graph.model_runtime across 20+ files
- Migrate core.workflow.file -> dify_graph.file across 15+ files
- Migrate core.workflow.enums -> dify_graph.enums in service files
- Fix SandboxContext phantom import in dify_graph/context/__init__.py
- Fix core.app.workflow.node_factory -> core.workflow.node_factory
- Fix toast import paths (useToastContext from toast/context)
- Fix app-info.tsx import paths for relocated app-operations
- Fix 15 frontend test files for API changes, missing QueryClientProvider,
i18n key renames, and component behavior changes
Made-with: Cursor
2026-03-23 10:31:11 +08:00
886854eff8
chore: add guard tests for billing ( #33831 )
...
Co-authored-by: 非法操作 <hjlarry@163.com >
2026-03-23 09:45:32 +08:00
94b01f6821
Merge commit '92bde350' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/controllers/console/app/workflow_draft_variable.py
# api/core/agent/cot_agent_runner.py
# api/core/agent/cot_chat_agent_runner.py
# api/core/agent/cot_completion_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/app/apps/advanced_chat/app_generator.py
# api/core/app/apps/advanced_chat/app_runner.py
# api/core/app/apps/agent_chat/app_runner.py
# api/core/app/apps/workflow/app_generator.py
# api/core/app/apps/workflow/app_runner.py
# api/core/app/entities/app_invoke_entities.py
# api/core/app/entities/queue_entities.py
# api/core/llm_generator/output_parser/structured_output.py
# api/core/workflow/workflow_entry.py
# api/dify_graph/context/__init__.py
# api/dify_graph/entities/tool_entities.py
# api/dify_graph/file/file_manager.py
# api/dify_graph/graph_engine/response_coordinator/coordinator.py
# api/dify_graph/graph_events/node.py
# api/dify_graph/node_events/node.py
# api/dify_graph/nodes/agent/agent_node.py
# api/dify_graph/nodes/llm/entities.py
# api/dify_graph/nodes/llm/llm_utils.py
# api/dify_graph/nodes/llm/node.py
# api/dify_graph/nodes/question_classifier/question_classifier_node.py
# api/dify_graph/runtime/graph_runtime_state.py
# api/dify_graph/variables/segments.py
# api/factories/variable_factory.py
# api/services/variable_truncator.py
# api/tests/unit_tests/utils/structured_output_parser/test_structured_output_parser.py
# api/uv.lock
# web/app/components/app-sidebar/app-info.tsx
# web/app/components/app-sidebar/app-sidebar-dropdown.tsx
# web/app/components/app/create-app-modal/index.spec.tsx
# web/app/components/apps/__tests__/list.spec.tsx
# web/app/components/apps/app-card.tsx
# web/app/components/apps/list.tsx
# web/app/components/header/account-dropdown/compliance.tsx
# web/app/components/header/account-dropdown/index.tsx
# web/app/components/header/account-dropdown/support.tsx
# web/app/components/workflow-app/components/workflow-onboarding-modal/index.tsx
# web/app/components/workflow/panel/debug-and-preview/hooks.ts
# web/contract/console/apps.ts
# web/contract/router.ts
# web/eslint-suppressions.json
# web/next.config.ts
# web/pnpm-lock.yaml
2026-03-23 09:39:49 +08:00
cccff6768a
Merge commit '9c339239' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/README.md
# api/controllers/console/app/workflow_draft_variable.py
# api/core/agent/cot_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/app/apps/advanced_chat/app_runner.py
# api/core/plugin/backwards_invocation/model.py
# api/core/prompt/advanced_prompt_transform.py
# api/core/workflow/nodes/base/node.py
# api/core/workflow/nodes/llm/llm_utils.py
# api/core/workflow/nodes/llm/node.py
# api/core/workflow/nodes/parameter_extractor/parameter_extractor_node.py
# api/core/workflow/nodes/question_classifier/question_classifier_node.py
# api/core/workflow/runtime/graph_runtime_state.py
# api/extensions/storage/base_storage.py
# api/factories/variable_factory.py
# api/pyproject.toml
# api/services/variable_truncator.py
# api/uv.lock
# web/app/account/oauth/authorize/page.tsx
# web/app/components/app/configuration/config-var/config-modal/field.tsx
# web/app/components/base/alert.tsx
# web/app/components/base/chat/chat/answer/human-input-content/executed-action.tsx
# web/app/components/base/chat/chat/answer/more.tsx
# web/app/components/base/chat/chat/answer/operation.tsx
# web/app/components/base/chat/chat/answer/workflow-process.tsx
# web/app/components/base/chat/chat/citation/index.tsx
# web/app/components/base/chat/chat/citation/popup.tsx
# web/app/components/base/chat/chat/citation/progress-tooltip.tsx
# web/app/components/base/chat/chat/citation/tooltip.tsx
# web/app/components/base/chat/chat/question.tsx
# web/app/components/base/chat/embedded-chatbot/inputs-form/index.tsx
# web/app/components/base/chat/embedded-chatbot/inputs-form/view-form-dropdown.tsx
# web/app/components/base/markdown-blocks/form.tsx
# web/app/components/base/prompt-editor/plugins/hitl-input-block/component-ui.tsx
# web/app/components/base/tag-management/panel.tsx
# web/app/components/base/tag-management/trigger.tsx
# web/app/components/header/account-setting/index.tsx
# web/app/components/header/account-setting/members-page/transfer-ownership-modal/index.tsx
# web/app/components/header/account-setting/model-provider-page/provider-added-card/index.tsx
# web/app/signin/utils/post-login-redirect.ts
# web/eslint-suppressions.json
# web/package.json
# web/pnpm-lock.yaml
2026-03-23 09:00:45 +08:00
b53675a16c
test: add unit tests for services-part-1 ( #33050 )
2026-03-23 00:02:41 +08:00
f41d1d0822
refactor: use EnumText for Conversation/Message invoke_from and from_source ( #33832 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org >
2026-03-21 11:47:48 +09:00
55cc24fed7
refactor(api): type tool service dicts with TypedDict ( #33836 )
2026-03-21 11:43:49 +09:00
3d5a29462e
refactor(api): type workflow service dicts with TypedDict ( #33829 )
2026-03-20 22:36:31 +09:00
c8ed584c0e
fix: adding a restore API for version control on workflow draft ( #33582 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
2026-03-20 14:54:23 +08:00
5b9cb55c45
refactor: use EnumText for MessageFeedback and MessageFile columns ( #33738 )
2026-03-20 01:13:26 +09:00
89b76d6c33
Merge commit '657eeb65' into sandboxed-agent-rebase
...
Made-with: Cursor
# Conflicts:
# api/core/agent/cot_chat_agent_runner.py
# api/core/agent/fc_agent_runner.py
# api/core/memory/token_buffer_memory.py
# api/core/variables/segments.py
# api/core/workflow/file/file_manager.py
# api/core/workflow/nodes/agent/agent_node.py
# api/core/workflow/nodes/llm/llm_utils.py
# api/core/workflow/nodes/parameter_extractor/parameter_extractor_node.py
# api/core/workflow/workflow_entry.py
# api/factories/variable_factory.py
# api/pyproject.toml
# api/services/variable_truncator.py
# api/uv.lock
# web/app/components/app/app-publisher/index.tsx
# web/app/components/app/overview/settings/index.tsx
# web/app/components/apps/app-card.tsx
# web/app/components/apps/index.tsx
# web/app/components/apps/list.tsx
# web/app/components/base/chat/chat-with-history/header-in-mobile.tsx
# web/app/components/base/features/new-feature-panel/conversation-opener/modal.tsx
# web/app/components/base/features/new-feature-panel/file-upload/setting-content.tsx
# web/app/components/base/features/new-feature-panel/moderation/moderation-setting-modal.tsx
# web/app/components/base/features/new-feature-panel/text-to-speech/param-config-content.tsx
# web/app/components/base/message-log-modal/index.tsx
# web/app/components/base/switch/index.tsx
# web/app/components/base/tab-slider-plain/index.tsx
# web/app/components/explore/try-app/app-info/index.tsx
# web/app/components/plugins/plugin-detail-panel/tool-selector/components/reasoning-config-form.tsx
# web/app/components/workflow/nodes/llm/components/json-schema-config-modal/visual-editor/edit-card/required-switch.tsx
# web/app/components/workflow/nodes/llm/panel.tsx
# web/contract/router.ts
# web/eslint-suppressions.json
# web/i18n/fa-IR/workflow.json
2026-03-19 17:38:56 +08:00
e4f1d3c63a
refactor: use EnumText(StorageType) for UploadFile.storage_type ( #33728 )
2026-03-19 15:15:32 +09:00
9ff0d9df88
refactor(api): type WaterCrawl API responses with TypedDict ( #33700 )
2026-03-19 10:35:44 +09:00
b2a388b7bf
refactor(api): type Firecrawl API responses with TypedDict ( #33691 )
2026-03-19 04:00:06 +09:00
dc69f65b4b
fix: add responding error information when obtain pipeline template detail failed ( #33628 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-18 13:31:45 +08:00
04c0bf61fa
refactor: use EnumText in provider models ( #33634 )
2026-03-18 13:27:40 +09:00
3454224ff9
refactor(api): replace dict with SummaryIndexSettingDict TypedDict in core/rag ( #33633 )
2026-03-18 13:26:49 +09:00
3870b2ad2d
refactor: use EnumText for dataset and replace string literals 4 ( #33606 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-18 09:18:08 +09:00
7757bb5089
refactor(api): Query API to select function_1 ( #33565 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-17 23:29:16 +09:00
a592c53573
fix: auto-activate credential when provider record exists without act… ( #33503 )
2026-03-17 17:27:11 +08:00
18ff5d9288
feat: add metrics to clean message and workflow-run task ( #33143 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: hj24 <mambahj24@gmail.com >
2026-03-17 13:55:28 +08:00
40b0d7c898
feat: implement app runtime upgrade feature to clone and convert classic runtime apps to sandboxed mode
2026-03-17 13:54:16 +08:00
7e34faaf51
refactor(api): replace dict/Mapping with TypedDict in trigger.py and workflow.py ( #33562 )
2026-03-17 13:14:42 +09:00
f886f11094
refactor(api): replace dict/Mapping with TypedDict in dataset models ( #33550 )
2026-03-17 10:33:29 +09:00
57d476d4e2
feat: apply markdown rendering to HITL email, sanitize email subject and body ( #32305 )
...
This PR:
1. Fixes the bug that email body of `HumanInput` node are sent as-is, without markdown rendering or sanitization
2. Applies HTML sanitization to email subject and body
3. Removes `\r` and `\n` from email subject to prevent SMTP header injection
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-16 16:52:46 +08:00
98e72521f4
chore: change draft var to user scoped ( #33066 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com >
2026-03-16 14:04:41 +08:00
977ed79ea0
fix: enterprise API error handling and license enforcement ( #33044 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2026-03-15 20:59:41 -07:00
f21288df5a
fix: preserve custom icons in exported DSL ( #33424 )
...
Signed-off-by: majiayu000 <1835304752@qq.com >
2026-03-15 18:52:41 +08:00
fb41b215c8
refactor(api): move workflow knowledge nodes and trigger nodes ( #33445 )
2026-03-15 15:24:59 +08:00
1b6e695520
refactor(workflow): move agent node back to core workflow ( #33431 )
2026-03-14 22:33:13 +08:00
e64f4d6039
refactor: replace sa.String with EnumText in mapped_column for type s… ( #33332 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-14 13:38:27 +09:00