dcd614ca77
feat: add LLM quota deduction functionality and enhance model configuration handling in llm_utils.py; update test cases for LLM node context handling
2026-03-24 08:45:11 +08: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
2cbc8da9cb
chore: remove block code
2026-03-23 16:32:48 +08:00
1b13e9ddb3
chore: remove merge helper files (MERGE_LOG.md, run_tests.sh)
...
Made-with: Cursor
2026-03-23 15:29:12 +08:00
9df48cdbe2
docs: update MERGE_LOG.md with segment 5 completion - all segments merged
...
Made-with: Cursor
2026-03-23 15:23:55 +08:00
ba7827acd1
fix: resolve test failures and lint errors after segment 5 merge
...
- Add login_manager mock to controller test fixtures (6 files)
- Remove duplicate MemoryConfig import in llm_utils.py
- Fix line-too-long in test_workflow_draft_variable.py
Made-with: Cursor
2026-03-23 15:23:33 +08:00
a659296dc7
fix: improve sandbox storage mount handling and error logging
2026-03-23 14:29:28 +08: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
4f236cab7f
docs: update MERGE_LOG.md with segment 4 completion
...
Made-with: Cursor
2026-03-23 13:59:58 +08:00
a28f22e59d
fix: resolve import errors and test failures after segment 4 merge
...
- Update BaseNodeData import path to dify_graph.entities.base_node_data
- Change NodeType.COMMAND/FILE_UPLOAD to BuiltinNodeTypes constants
- Fix system_oauth_encryption -> system_encryption rename in commands
- Remove tests for deleted agent runner modules
- Fix Avatar: named import + string size API in collaboration files
- Add missing skill feature deps: @monaco-editor/react, react-arborist,
@tanstack/react-virtual
- Fix frontend test mocks: add useUserProfile, useLeaderRestoreListener,
next/navigation mock, and nodeOutputVars to expected payload
Made-with: Cursor
2026-03-23 13:59:09 +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
55095e70d2
docs: update MERGE_LOG.md with segment 3 completion
...
Made-with: Cursor
2026-03-23 10:31:40 +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
6a8fa7b54e
chore(deps): bump anthropics/claude-code-action from 1.0.75 to 1.0.76 in the github-actions-dependencies group ( #33875 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-23 10:22:44 +09:00
cbdcdcc2b9
fix: resolve test failures after segment 2 merge
...
- Backend: fix deduct_llm_quota import path in llm node
- Backend: update core.variables → core.workflow.variables imports
- Frontend: update UpdateWorkflowNodesMapPayload in tests
- Frontend: fix various test expectations to match merged code
Made-with: Cursor
2026-03-23 09:18:26 +08:00
66e67caa2b
fix: update core.variables imports to core.workflow.variables after S2 merge
...
Made-with: Cursor
2026-03-23 09:05:37 +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
51c418f497
fix: update remaining core.file imports missed in previous commit
...
Made-with: Cursor
2026-03-23 08:39:48 +08:00
e6d1431a02
test: improve code-cov for controller tests ( #33225 )
2026-03-23 00:29:18 +08:00
b53675a16c
test: add unit tests for services-part-1 ( #33050 )
2026-03-23 00:02:41 +08:00
31506b27ab
test: added for core module moderation, repositories, schemas ( #32514 )
...
Co-authored-by: Rajat Agarwal <rajat.agarwal@infocusp.com >
2026-03-22 23:57:12 +08:00
40846c262c
perf: tidb_on_qdrant_vector delete_by_ids use batch delete ( #33846 )
2026-03-22 21:09:43 +09:00
c6e317a00b
fix: test error by matching pkg versioin with docker compose ( #33857 )
2026-03-22 18:33:24 +09:00
18e4ec73d6
chore: use selectinload instead of joinedload in conversation query ( #33014 )
...
Co-authored-by: caoergou <caogou123@163.com >
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>
2026-03-22 07:35:32 +09:00
35cbd83e83
refactor: select in console explore and workspace controllers ( #33842 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-21 20:06:17 +09:00
2ce2fbc2d4
refactor: migrate workflow run repository unit tests from mocks to te… ( #33843 )
2026-03-21 19:54:56 +09:00
097773c9f5
refactor: migrate workflow run repository tests from mocks to … ( #33837 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-21 14:23:11 +09: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
609258f42d
refactor: select in console auth, setup and apikey ( #33790 )
2026-03-21 11:29:29 +09:00
3d5a29462e
refactor(api): type workflow service dicts with TypedDict ( #33829 )
2026-03-20 22:36:31 +09:00
a1af085736
refactor(workspace): optimize /workspaces plan resolution for SaaS and enterprise with resilient fallback ( #33788 )
2026-03-20 20:54:59 +08:00
3ce43724df
chore: enable erasableOnly in lint ( #31487 )
...
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com >
2026-03-20 18:23:57 +08:00
6d3b2491f9
chore(deps): bump flatted from 3.4.1 to 3.4.2 in /sdks/nodejs-client ( #33821 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-20 19:00:35 +09:00
ec8ff89dc1
docs(web): update dev guide ( #33815 )
2026-03-20 17:23:17 +08:00
b0566b4193
fix(chat): fix image re-render due to opener remount ( #33816 )
2026-03-20 17:20:44 +08:00
955a475021
chore: neutral PR opt-in instructions ( #33817 )
2026-03-20 18:03:42 +09:00
27ed40225d
refactor(web): update frontend toast call sites to use the new shortcut API ( #33808 )
...
Signed-off-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-20 16:02:22 +08:00
ac87704685
docs: add automated agent contribution note to CONTRIBUTING.md 🤖 🤖 🤖 ( #33809 )
...
Co-authored-by: yuchengpersonal <yuchengpersonal@users.noreply.github.com >
2026-03-20 16:57:20 +09:00
947fc8db8f
chore(i18n): sync translations with en-US ( #33804 )
...
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2026-03-20 15:45:54 +08: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
4d538c3727
refactor(web): migrate tools/MCP/external-knowledge toast usage to UI toast and add i18n ( #33797 )
2026-03-20 14:29:40 +08:00
f35a4e5249
chore(i18n): sync translations with en-US ( #33796 )
...
Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2026-03-20 14:19:37 +08:00
978ebbf9ea
refactor: migrate high-risk overlay follow-up selectors ( #33795 )
...
Signed-off-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-20 14:12:35 +08:00
d6e247849f
fix: add max_retries=0 for executor ( #33688 )
...
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-03-20 14:07:32 +08:00
aa71784627
refactor(toast): migrate dataset-pipeline to new ui toast API and extract i18n ( #33794 )
2026-03-20 12:17:27 +08:00