Jyong and Claude Fable 5.2
cddc789dca
feat(file-scan): make the scanner request timeout configurable, default 300 seconds
...
FILE_SCAN_REQUEST_TIMEOUT_SECONDS now applies to every scanner type.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-12 15:05:41 +08:00
Jyong and Claude Fable 5.2
be340e569c
refactor(file-scan): let the custom endpoint scanner hold its own address and key
...
The Custom Endpoint scanner no longer goes through API-based extensions.
A workspace enters the endpoint URL and an API key in the scanner dialog,
and the endpoint receives the file content directly instead of a signed
download link.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-12 15:04:19 +08:00
Jyong and Claude Fable 5.2
9cf281a9ec
fix(file-scan): require credentials again when a scanner's address changes
...
A stored key is never returned to the console, but an owner or admin
could change the Cloudmersive endpoint to a server they control and
receive the stored key through the connectivity check.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-12 14:27:58 +08:00
Jyong and Claude Fable 5.2
7d88eac2fe
test(file-scan): satisfy strict type checks in the new tests
...
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-11 19:00:08 +08:00
Jyong and Claude Fable 5.2
65de4cfb7b
refactor(file-scan): resolve the dataset scope in the service layer
...
Controllers must not query the database directly, and new tests must not
introduce mocks or namespaces as test doubles.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-11 18:50:03 +08:00
Jyong and Claude Fable 5.2
3da1c2412e
fix(file-scan): chain the migration after the current head
...
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-11 18:41:27 +08:00
Jyong and Claude Fable 5.2
88280652ff
docs(api): regenerate console OpenAPI markdown for file scan routes
...
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-11 18:40:38 +08:00
Jyong and Claude Fable 5.2
7d6c1845b8
feat(file-scan): scan uploaded knowledge base files for malware
...
Add a shared file malware-scanning module and use it in the Classic
Knowledge Base, RAG Pipeline local files and the Agent Knowledge Base.
- core/file_scan: scanner adapters for ClamAV (deployment-configured),
Cloudmersive, Scanii, OPSWAT MetaDefender Cloud and API-based
extensions (new `file.malware_scan` extension point).
- services/file_scan: FileScanService is the single entry point other
modules call. Providers are workspace-wide; a policy belongs to a
scope (dataset, knowledge_fs_space), so further modules can adopt
scanning without schema changes.
- Each file is scanned on its own: a rejected file fails only its own
document. Malware always blocks and deletes the stored original;
invalid credentials and exhausted quota stop processing regardless of
the "allow" fallback.
- Console: workspace scanner management and a per-knowledge-base
policy section in both settings forms; the Agent Knowledge Base
upload keeps going after a rejected file and explains each failure.
- Off by default behind FILE_SCAN_ENABLED.
Co-Authored-By: Claude Fable 5.2 <noreply@anthropic.com >
2026-11-11 18:37:03 +08:00
非法操作
ba2f623dfe
fix: restore default datasource credential fallback ( #46039 )
2026-11-11 09:08:52 +00:00
林玮 (Jade Lin)
a75c498f09
fix: isolate trial and paid credit pools ( #46051 )
2026-11-11 08:29:17 +00:00
3774ea85ae
ci: bump tyck to check new err ( #45614 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Codex <codex@openai.com >
2026-11-11 07:31:35 +00:00
dependabot[bot] and Yunlu Wen
1c667f3ef3
chore(deps): bump flask-compress from 1.25 to 1.26 in /api in the flask group ( #45848 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Yunlu Wen <yunlu.wen@dify.ai >
2026-11-11 06:54:13 +00:00
wangxiaolei
f579ea4daa
feat: add a command retry sync miss rbac permission ( #46032 )
2026-11-11 06:45:30 +00:00
非法操作
b39a44c0e1
refactor(agent): isolate API access configuration ( #46024 )
2026-11-11 06:18:34 +00:00
Eddy ZHANG
d2df02beb4
test(api): strictly type template transform shared tests ( #46028 )
2026-11-11 05:36:25 +00:00
Eddy ZHANG
07b03746f3
test(api): strictly type MCP utility tests ( #46030 )
2026-11-11 05:35:48 +00:00
Felix Shi and Felix Shi
6d3447e8c3
refactor(api): enable strict typing for archive/schedule/external-api test files ( #44885 )
...
Co-authored-by: Felix Shi <204130665+shi-felix@users.noreply.github.com >
2026-11-11 04:42:49 +00:00
583615e412
feat: support personal access token ( #45540 )
...
Co-authored-by: twwu <twwu@dify.ai >
Co-authored-by: Eldar Dadashov <52511672+eldardada@users.noreply.github.com >
Co-authored-by: Byron.wang <byron@dify.ai >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Yunlu Wen <yunlu.wen@dify.ai >
2026-11-11 03:00:24 +00:00
FFXN and autofix-ci[bot]
f3f9b121a4
feat(knowledge): add GitHub tree previews to source selection ( #45990 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-11-11 02:47:23 +00:00
yetuge
3b53f482a1
test(api): bring the console hit testing tests under strict pyrefly ( #45967 )
2026-11-10 17:07:59 +00:00
Yunlu Wen and Devin
8fb0e23773
refactor(agent)!: use native OpenShell service exposure and remove shared volume based snapshot ( #45862 )
...
Co-authored-by: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-11-10 11:46:19 +00:00
QuantumGhost and zxhlyh
a4d64bcddd
feat(hitl): improve forms, notifications, and IM contact sync ( #45945 )
...
Co-authored-by: zxhlyh <jasonapring2015@outlook.com >
2026-11-10 09:00:41 +00:00
ffffff55
f57fca6430
fix(api): percent-encode custom tool path parameters ( #45965 )
2026-11-10 08:19:53 +00:00
非法操作 and autofix-ci[bot]
ce26b22970
refactor(api): isolate trigger execution lifecycle ( #45950 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-11-10 08:17:39 +00:00
非法操作
27297e954f
refactor(api): inject trigger debug runtime ( #45946 )
2026-11-10 07:09:35 +00:00
yetuge
49f4ff80e0
test(api): bring the inner knowledge retrieval tests under strict pyrefly ( #45969 )
2026-11-10 06:36:21 +00:00
非法操作
17686733f7
refactor(api): isolate trigger schedule runtime ( #45941 )
2026-11-10 06:28:06 +00:00
yetuge and yetuge
6c33884c36
test(api): annotate console app import tests for strict pyrefly ( #45822 )
...
Co-authored-by: yetuge <yetuge@users.noreply.github.com >
2026-11-10 05:46:08 +00:00
yetuge and yetuge
7c5b5c35b4
test(api): bring the execution context tests under strict pyrefly ( #45697 )
...
Co-authored-by: yetuge <yetuge@users.noreply.github.com >
2026-11-10 05:41:39 +00:00
yetuge and yetuge
156a9b94ed
test(api): annotate rag pipeline controller tests for strict pyrefly ( #45876 )
...
Co-authored-by: yetuge <yetuge@users.noreply.github.com >
2026-11-10 05:39:19 +00:00
a4035bdbf8
test(e2e): stop excluding a clean pyrefly contract test ( #45879 )
...
Co-authored-by: yetuge <yetuge@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-11-10 05:38:34 +00:00
ChengFa
51f3625ee3
fix(trace): reject trailing newline in external trace id validation ( #45534 )
2026-11-10 05:22:10 +00:00
Asuka Minato and Codex
1212bb3583
ci: enable Ruff B901 ( #44104 )
...
Co-authored-by: Codex <codex@openai.com >
2026-11-10 05:20:16 +00:00
ChengFa
644f8b7c08
fix(url): normalize base url path without corrupting query and fragment ( #45647 )
2026-11-10 05:17:01 +00:00
非法操作 and Stream
9fbd9dcd33
refactor(api): isolate native webhook runtime ( #45912 )
...
Co-authored-by: Stream <Stream_2@qq.com >
2026-11-10 05:08:50 +00:00
ZephyrWang
af37c00fb3
fix(smtp): honor the local hostname during STARTTLS ( #45909 )
2026-11-10 04:40:38 +00:00
Keith
172dc9b477
test(agent): pin retirement lifecycle business contracts ( #43016 )
2026-11-10 04:23:07 +00:00
Evan
7d5cc3721c
fix(agent): tolerate malformed ReAct action payloads ( #45201 )
2026-11-10 03:59:58 +00:00
zyssyz123
cfa215cb62
fix(api): restrict classic app model fallbacks to active models ( #45951 )
2026-11-10 03:57:13 +00:00
Ingram Z
2caa3fe786
fix(deps): bump Kombu to 5.7.0 to fix Redis BRPOP spin ( #45940 )
2026-11-10 02:35:59 +00:00
bingtang
7c34331579
fix(rag): strip URL query/fragment before deriving file suffix in load_from_url ( #43338 )
2026-11-09 23:15:44 +00:00
Felix Shi
fdb09a9e76
test(api): annotate node, event and schedule tests for strict pyrefly ( #45769 )
2026-11-09 18:48:27 +00:00
Tanishq
99683fe2e8
fix(trigger): store webhook uploads under the trigger end user ( #44995 )
2026-11-09 18:39:05 +00:00
xuan
b29552aae0
fix: keep the docx external image extension when Content-Type has parameters ( #45816 )
2026-11-09 16:48:58 +00:00
ChengFa
130291b6b2
fix(file): strip surrounding quotes from Content-Disposition filename ( #45885 )
2026-11-09 14:49:10 +00:00
xuan
52e299ef5f
fix: support OpenAPI 3.1 nullable union parameter types in custom tools ( #45895 )
2026-11-09 13:22:03 +00:00
Saim Shafique
af33e86076
fix(agent): treat null variable value as unset strategy param ( #45904 )
2026-11-09 12:55:18 +00:00
TINGyu123644 and autofix-ci[bot]
01d9853ade
test(api): add unit tests for rag text splitter ( #45256 )
...
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-11-09 11:58:15 +00:00
XiaoBa
23ea5e3562
fix: validate retrieval attachment UUIDs and tolerate invalid image history ( #45915 )
2026-11-09 11:36:53 +00:00
62d63c6302
fix(api): preserve zero JSON-RPC request id in MCP error responses ( #42997 )
...
Co-authored-by: TINGyu123644 <TINGyu123644@users.noreply.github.com >
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-11-09 11:31:25 +00:00