Commit Graph

330 Commits

Author SHA1 Message Date
CodingOnStar
7046fd6728 test: enhance download operation tests to cover text and binary file handling scenarios 2026-03-30 15:06:31 +08:00
hjlarry
e6e9b7ae94 fix(skill): fallback to direct save for collaboration followers on sync failure or timeout 2026-03-27 17:30:21 +08:00
Joel
ee093a21c8 fix: click file missing 2026-03-27 16:05:53 +08:00
yyh
018b213ae1 fix(web): restore skill tab unsaved close dialog styling 2026-03-27 15:51:30 +08:00
yyh
327bbfa96a refactor: use Base UI popover anchor for skill file picker 2026-03-27 15:29:28 +08:00
Joel
4c44fd7ca8 feat: add sandbox corner mark 2026-03-27 15:16:29 +08:00
Joel
43b1042285 chore: portoal to follow to popover 2026-03-27 15:16:28 +08:00
yyh
e13100098a fix(skill): guard file collaboration initialization 2026-03-27 14:53:16 +08:00
Joel
edd2b040f3 fix: file upload bg 2026-03-27 14:12:53 +08:00
yyh
c43e496cc2 fix(skill): pin preview tabs when remote sync only dirties metadata 2026-03-27 14:04:40 +08:00
yyh
9e1638ca74 fix: use isClient 2026-03-27 14:00:17 +08:00
yyh
517f42ec3f refactor(skill): split file content panel architecture 2026-03-27 13:59:07 +08:00
yyh
86bfbfc51a perf(skill): cache normalized asset tree index 2026-03-27 12:51:00 +08:00
Joel
3cb7a5b613 chore: file to files 2026-03-26 18:07:14 +08:00
Joel
9c8a5ff527 chore: skill in query to file 2026-03-26 16:21:20 +08:00
yyh
a1a527902b refactor: remove redundant skill file sync ref guard 2026-03-26 16:10:58 +08:00
Joel
d3c8af6aa9 chore: tests 2026-03-26 16:00:38 +08:00
Joel
e5947d518e feat: add insert @ info 2026-03-26 16:00:37 +08:00
yyh
5ce1dfa0bf fix(skill): keep upload inputs mounted outside overlays 2026-03-26 15:55:26 +08:00
yyh
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
yyh
6408300c35 feat: implement batch upload operation and integrate with create operations 2026-03-26 14:59:06 +08:00
yyh
80c5434f6f chore: update skills templates 2026-03-26 10:49:25 +08:00
yyh
20dea1faa2 use base ui toast 2026-03-25 20:38:44 +08:00
Stephen Zhou
a7178b4d5c tix test 2026-03-25 19:25:22 +08:00
yyh
3571bee55f fix(web): use ScrollArea in skill start tab 2026-03-25 18:29:32 +08:00
yyh
720c950f9e refactor(web): remove tooltip-plus and migrate to ui tooltip 2026-03-25 13:35:43 +08:00
yyh
4763c80a1b fix(skill): align node menu to the right 2026-03-25 12:58:26 +08:00
yyh
ab63df602a fix(skill): stabilize file tree local operations 2026-03-25 12:21:32 +08:00
yyh
88d82b5401 fix 2026-03-25 00:05:40 +08:00
yyh
84005bd25b Align skill tree menu behaviors 2026-03-24 23:21:24 +08:00
yyh
612d90ac6f fix: remove portal-to-follow-elem-plus shim 2026-03-24 22:18:30 +08:00
yyh
432e355dc4 fix: context menu 2026-03-24 21:04:13 +08:00
yyh
60e46854c6 fix: context menu 2026-03-24 20:39:07 +08:00
yyh
654890ed16 fix: style 2026-03-24 20:25:03 +08:00
yyh
7bc0ec8a36 fix: import skill modal 2026-03-24 20:18:38 +08:00
yyh
a3cd497dc0 fix: style 2026-03-24 20:14:40 +08:00
yyh
2e1888d37b fix: tests 2026-03-24 20:10:17 +08:00
yyh
70767f756c refactor(skill): migrate file tree menus to base ui overlays 2026-03-24 19:57:29 +08:00
yyh
29469a8600 fix: prevent duplicate skill file creation submits 2026-03-24 19:37:29 +08:00
Novice
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
Novice
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
Novice
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
yyh
9ff9942af1 refactor(web): move sandbox tree builder to workflow artifacts utils 2026-02-27 17:16:03 +08:00
yyh
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
yyh
60b02e6d2b refactor(web): destructure mutation result to narrow useCallback dependencies 2026-02-25 21:04:20 +08:00
yyh
d60a43164f refactor(web): use skipToken for optional query inputs 2026-02-25 00:56:38 +08:00
yyh
bad48e5deb refactor(web): replace query hooks with queryOptions factories (#32520) 2026-02-25 00:31:25 +08:00
yyh
f13f5a8882 fix(web): truncate long parent paths in skill file-tree search results 2026-02-24 23:50:28 +08:00
Joel
4b6f1861ef fix: view vars artifacts md not support scroll and loading not in the center 2026-02-14 11:00:52 +08:00
Joel
9185c05050 chore: useless cn 2026-02-11 14:58:54 +08:00