3cb7a5b613
chore: file to files
2026-03-26 18:07:14 +08:00
9c8a5ff527
chore: skill in query to file
2026-03-26 16:21:20 +08:00
a1a527902b
refactor: remove redundant skill file sync ref guard
2026-03-26 16:10:58 +08:00
d3c8af6aa9
chore: tests
2026-03-26 16:00:38 +08:00
e5947d518e
feat: add insert @ info
2026-03-26 16:00:37 +08:00
5ce1dfa0bf
fix(skill): keep upload inputs mounted outside overlays
2026-03-26 15:55:26 +08:00
12ca422c8a
fix(app-assets): restore atomic batch upload for nested folder targets
...
The previous nested folder upload flow bypassed the backend batch-upload
contract when parentId was set. Instead of creating the whole metadata
tree in one backend operation, the frontend recursively called
createFolder/getFileUploadUrl for each node.
That introduced two regressions for uploads into subfolders:
- consistency regression: mid-sequence failures could leave partially
created folder trees under the destination folder
- performance regression: metadata creation degraded from a single
batch request to O(files + folders) round-trips before file bytes
were uploaded
This change moves nested uploads back to the original batch semantics:
- add optional parent_id support to app asset batch-upload payload
- create the whole nested tree under the target parent in
AppAssetService.batch_create_from_tree
- pass parentId through useBatchUpload instead of using per-node
createFolder/getFileUploadUrl calls
- remove the now-unnecessary useBatchUploadOperation wrapper
- add a backend unit test covering batch tree creation under an
existing parent folder
After this change, both root uploads and subfolder uploads use the same
single-request metadata creation path, preserving atomic tree creation
semantics and avoiding avoidable metadata round-trips.
2026-03-26 15:16:55 +08:00
6408300c35
feat: implement batch upload operation and integrate with create operations
2026-03-26 14:59:06 +08:00
80c5434f6f
chore: update skills templates
2026-03-26 10:49:25 +08:00
20dea1faa2
use base ui toast
2026-03-25 20:38:44 +08:00
a7178b4d5c
tix test
2026-03-25 19:25:22 +08:00
3571bee55f
fix(web): use ScrollArea in skill start tab
2026-03-25 18:29:32 +08:00
720c950f9e
refactor(web): remove tooltip-plus and migrate to ui tooltip
2026-03-25 13:35:43 +08:00
4763c80a1b
fix(skill): align node menu to the right
2026-03-25 12:58:26 +08:00
ab63df602a
fix(skill): stabilize file tree local operations
2026-03-25 12:21:32 +08:00
88d82b5401
fix
2026-03-25 00:05:40 +08:00
84005bd25b
Align skill tree menu behaviors
2026-03-24 23:21:24 +08:00
612d90ac6f
fix: remove portal-to-follow-elem-plus shim
2026-03-24 22:18:30 +08:00
432e355dc4
fix: context menu
2026-03-24 21:04:13 +08:00
60e46854c6
fix: context menu
2026-03-24 20:39:07 +08:00
654890ed16
fix: style
2026-03-24 20:25:03 +08:00
7bc0ec8a36
fix: import skill modal
2026-03-24 20:18:38 +08:00
a3cd497dc0
fix: style
2026-03-24 20:14:40 +08:00
2e1888d37b
fix: tests
2026-03-24 20:10:17 +08:00
70767f756c
refactor(skill): migrate file tree menus to base ui overlays
2026-03-24 19:57:29 +08:00
29469a8600
fix: prevent duplicate skill file creation submits
2026-03-24 19:37:29 +08:00
d594365a45
feat: enhance configuration and environment setup for SSH sandbox and Creators Platform; update local excludes and improve component logic in the web app
2026-03-24 17:05:56 +08:00
499d237b7e
fix: pass all CI quality checks - ESLint, TypeScript, basedpyright, pyrefly, lint-imports
...
Frontend:
- Migrate deprecated imports: modal→dialog, toast→ui/toast, tooltip→tooltip-plus,
portal-to-follow-elem→portal-to-follow-elem-plus, select→ui/select, confirm→alert-dialog
- Replace next/* with @/next/* wrapper modules
- Convert TypeScript enums to const objects (erasable-syntax-only)
- Replace all `any` types with `unknown` or specific types in workflow types
- Fix unused vars, react-hooks-extra, react-refresh/only-export-components
- Extract InteractionMode to separate module, tool-block commands to commands.ts
Backend:
- Fix pyrefly errors: type narrowing, null guards, getattr patterns
- Remove unused TYPE_CHECKING imports in LLM node
- Add ignore_imports entries to .importlinter for dify_graph boundary violations
Made-with: Cursor
2026-03-24 10:54:58 +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
9ff9942af1
refactor(web): move sandbox tree builder to workflow artifacts utils
2026-02-27 17:16:03 +08:00
f70d89e80b
refactor(web): remove useSandboxFilesTree and derive hasFiles in components
...
Migrate ArtifactsSection to queryOptions + useQuery composition and derive\nfile tree/hasFiles locally from flat data. Remove the now-unused\nuseSandboxFilesTree helper and update related tests to mock the new\nqueryOptions-based flow.
2026-02-27 12:42:40 +08:00
60b02e6d2b
refactor(web): destructure mutation result to narrow useCallback dependencies
2026-02-25 21:04:20 +08:00
d60a43164f
refactor(web): use skipToken for optional query inputs
2026-02-25 00:56:38 +08:00
bad48e5deb
refactor(web): replace query hooks with queryOptions factories ( #32520 )
2026-02-25 00:31:25 +08:00
f13f5a8882
fix(web): truncate long parent paths in skill file-tree search results
2026-02-24 23:50:28 +08:00
4b6f1861ef
fix: view vars artifacts md not support scroll and loading not in the center
2026-02-14 11:00:52 +08:00
9185c05050
chore: useless cn
2026-02-11 14:58:54 +08:00
dbc575cac0
chore: popup file add ui
2026-02-11 14:58:54 +08:00
a5662c947c
chore: file choose high
2026-02-11 14:58:54 +08:00
25c4df27ba
feat: file uploader choose
2026-02-11 14:58:53 +08:00
c2fb3604de
feat: can show add files
2026-02-11 14:58:53 +08:00
c980f1b2ac
feat: support enable agent mode show tip in prompt editor
2026-02-10 17:02:12 +08:00
34bff10782
chore: tool group to plugin explore
2026-02-10 13:51:14 +08:00
1af4e5dda2
feat: tool group handle missing
2026-02-10 13:49:44 +08:00
1502121125
chore: enchance missting link to explore tab
2026-02-10 13:35:33 +08:00
b820c7d1cb
feat: plugin not found show
2026-02-10 11:46:12 +08:00
9e10b73b54
refactor(skill): replace @remixicon/react imports with CSS icon classes
...
Migrate all Remixicon component imports in workflow/skill to Tailwind CSS
icon utility classes (i-ri-*), reducing JS bundle size. Update MenuItem
to accept string icon classes alongside React components. Adjust test
selectors that relied on SVG element queries.
2026-02-09 19:51:05 +08:00
db0c527ce8
Merge remote-tracking branch 'origin/main' into feat/support-agent-sandbox
2026-02-09 18:43:04 +08:00
64e338ece5
fix: db popup selector not show
2026-02-09 18:12:50 +08:00
91649c9bfd
fix: skill preview error
2026-02-09 17:12:01 +08:00