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
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
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
eb66d36ea8
chore: add vinext as dev server ( #32559 )
...
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2026-03-01 09:54:39 +08:00
35b31d0cdd
ci(web): parallelize web tests with 4-shard Vitest sharding ( #32713 )
2026-02-27 21:33:12 +08:00
f73be8d69e
feat(web): add hover clear button for provider search ( #32707 )
...
Signed-off-by: -LAN- <laipz8200@outlook.com >
Co-authored-by: yyh <yuanyouhuilyz@gmail.com >
Co-authored-by: yyh <92089059+lyzno1@users.noreply.github.com >
2026-02-27 20:42:30 +08:00
865321abb4
fix: use css icons
2026-02-27 17:39:55 +08:00
0bdd21bc17
refactor(web): replace query option tunneling with queryOptions factories
...
Extract sandboxFilesTreeOptions and buildTreeFromFlatList from
useSandboxFilesTree so callers that need custom TanStack Query behavior
(e.g. refetchInterval) can compose at the call site instead of tunneling
options through the hook. Remove the thin useGetSandboxProviderList
wrapper in favor of inline oRPC queryOptions in the component.
Also remove redundant .input(type<unknown>()) from three no-input GET
contracts—oc already defaults TInputSchema to Schema<unknown, unknown>.
2026-02-27 11:58:16 +08:00
5b45b62994
test: improve coverage for header components ( #32628 )
2026-02-27 10:27:46 +08:00
bcd5dd0f81
test(web): increase coverage for files in folder plugin-page and model-provider-page ( #32377 )
2026-02-24 20:57:47 +08:00
ad3a195734
test(web): increase test coverage for model-provider-page folder ( #32374 )
2026-02-24 18:28:12 +08:00
2162cd1a69
test(web): increase test coverage for components inside header folder ( #32392 )
2026-02-24 12:44:10 +08:00
a0244d1390
test(web): add tests for model-provider-page files in header account-… ( #32360 )
2026-02-23 20:07:19 +08:00
42af9d5438
test(web): add members-page account-setting specs and improve coverage ( #32311 )
2026-02-23 20:06:35 +08:00
ce8354a42a
test: Add unit tests for Data Source Integrations (Notion, Website) and Modals ( #32313 )
...
Co-authored-by: akashseth-ifp <akash.seth@infocusp.com >
2026-02-23 13:00:02 +08:00
d0bb642fc5
test(web): Added test for model-auth files in header folder ( #32358 )
2026-02-23 12:57:00 +08:00
e4ddf07194
test: header account about, account setting and account dropdown ( #32283 )
2026-02-23 12:15:57 +08:00
aad980f267
test: tighten user-visible specs and raise coverage for key-validator… ( #32281 )
2026-02-23 12:15:34 +08:00
ea0e1b52a8
refactor(web): make Switch controlled-only and migrate call sites ( #32399 )
2026-02-18 23:47:07 +08:00
6415a0b799
refactor(web): remove sandbox provider literals from i18n
2026-02-13 19:04:51 +08:00
eac9cbdfb9
fix: sandbox provider icon sizing and alignment issues
...
Scale Docker SVG icon proportionally for small containers and fix E2B
PNG icon vertical offset by making its border wrapper a flex container.
2026-02-13 11:23:31 +08:00
a71d13523d
feat: Add Command and FileUpload workflow icons, fix SSH provider icon
2026-02-11 21:16:57 +08:00
26ace0da95
Merge branch 'main' into feat/support-agent-sandbox
2026-02-11 17:50:35 +08:00
b4fec9b7aa
fix: hide invite button if current user is not workspace manager ( #31744 )
2026-02-11 16:31:12 +08:00
d64d796815
chore: improve download graph log
2026-02-11 10:54:07 +08:00
439d931e9f
fix: support tool call badge & disable tools in llm when model not support tool call
2026-02-11 10:46:55 +08:00
2ab0b334a8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# web/app/components/rag-pipeline/components/update-dsl-modal.tsx
# web/app/components/workflow-app/hooks/use-nodes-sync-draft.ts
# web/app/components/workflow/variable-inspect/utils.tsx
# web/app/layout.tsx
# web/context/event-emitter.tsx
# web/eslint-suppressions.json
# web/next.config.ts
# web/package.json
# web/pnpm-lock.yaml
# web/types/feature.ts
2026-02-10 18:12:41 +08:00
f355c8d595
refactor: type safe env, update to zod v4 ( #32035 )
2026-02-10 17:55:11 +08:00
db0c527ce8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 18:43:04 +08:00
3c0b50ee77
feat(sandbox): add SSH agentbox provider for middleware and docker deployments
2026-02-09 16:38:05 +08:00
f6b036b121
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 11:35:42 +08:00
bdf6739b86
fix: search model provider list ( #32106 )
2026-02-09 10:35:40 +08:00
e9bff0b7b7
feat(sandbox): use official brand assets for provider icons
...
Replace placeholder sandbox provider icons with official brand assets:
- Docker: white whale SVG on brand blue (#1D63ED) background
- E2B: official PNG logo via CSS module
- Local: Dify-branded SVG icon (SandboxLocal)
2026-02-08 02:04:20 +08:00
871ec3b0ca
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/controllers/console/app/app.py
# web/eslint-suppressions.json
# web/eslint.config.mjs
2026-02-06 14:40:44 +08:00
e2913d9ee1
Revert "refactor!: replace Zustand global store with TanStack Query for systemFeatures"
...
This reverts commit 806ece9a67 .
2026-02-01 19:06:45 +08:00
806ece9a67
refactor!: replace Zustand global store with TanStack Query for systemFeatures
...
Follow-up to SSR prefetch migration (2833965 ). Eliminates the Zustand
middleman that was syncing TanStack Query data into a separate store.
- Remove useGlobalPublicStore Zustand store entirely
- Create hooks/use-global-public.ts with useSystemFeatures,
useSystemFeaturesQuery, useIsSystemFeaturesPending, useSetupStatusQuery
- Migrate all 93 consumers to import from @/hooks/use-global-public
- Simplify global-public-context.tsx to a thin provider component
- Update 18 test files to mock the new hook interface
- Fix SetupStatusResponse.setup_at type from Date to string (JSON)
- Fix setup-status.spec.ts mock target to match consoleClient
BREAKING CHANGE: useGlobalPublicStore is removed. Use useSystemFeatures()
from @/hooks/use-global-public instead.
2026-02-01 19:06:08 +08:00
6ee9078349
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/.env.example
# api/uv.lock
# web/app/components/app/create-app-modal/index.tsx
# web/app/components/app/create-from-dsl-modal/index.tsx
# web/app/components/apps/app-card.tsx
# web/pnpm-lock.yaml
2026-01-29 21:25:28 +08:00
b9ac7af9c5
refactor(web): consolidate download helpers ( #31664 )
2026-01-29 16:02:49 +08:00
5d41f67fe1
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
...
# Conflicts:
# api/core/workflow/graph_events/__init__.py
2026-01-27 16:22:02 +08:00
b66bd5f5a8
feat: enhance quota panel with installed providers mapping ( #31546 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
Co-authored-by: CodingOnStar <hanxujiang@dify.com >
2026-01-27 15:43:37 +08:00
2e954388f5
merge
2026-01-26 16:57:45 +08:00
8724ba04aa
fix: fix Cannot read properties of null (reading 'credential_form_sch… ( #31117 )
2026-01-26 15:52:53 +08:00
dd988d42c2
feat: enhance quota panel to support additional model providers and integrate trial models feature ( #31443 )
...
Co-authored-by: CodingOnStar <hanxujiang@dify.ai >
2026-01-26 14:04:12 +08:00
677775079f
fix: use IS_CLOUD_EDITION for 'Managed by SaaS' tag visibility
...
Change from !IS_CE_EDITION to IS_CLOUD_EDITION to ensure the tag only
shows in cloud edition, not in enterprise or other self-hosted variants.
2026-01-26 11:42:55 +08:00
4f75d7f8e2
fix: hide 'Managed by SaaS' tag in CE edition for sandbox providers
...
The tag should only display in SaaS version since CE edition also has
system config from migrations but the label is misleading for self-hosted.
2026-01-26 11:33:40 +08:00
4c596aaac2
Merge branch 'feat/collaboration2' into feat/support-agent-sandbox
2026-01-25 00:00:03 +08:00
edb4457684
Merge remote-tracking branch 'myori/main' into feat/collaboration2
2026-01-24 15:22:07 +08:00
f7f4d066dc
fix: following docs link fix ( #31390 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 16:13:10 +08:00
3de33f7a4e
fix: check and update doc links ( #30849 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 16:13:09 +08:00
036f6ef5ab
fix: following docs link fix ( #31390 )
...
Co-authored-by: Riskey <36894937+RiskeyL@users.noreply.github.com >
2026-01-22 15:02:37 +08:00