Commit Graph
14217 Commits
Author SHA1 Message Date
GareArc e7d6485641 refactor(openapi): drop the workspace switch op and the console-only current field
difyctl keeps its workspace pin on the device and no longer calls the
server switch, so the op had no caller. `current` on the workspace list
and detail reported the web console's workspace, which read as the one
difyctl uses.
2026-10-14 19:42:47 -07:00
GareArc 223859af9a refactor(openapi): export DSL through the app export service
Main moved DSL export onto AppExportService, which owns its session.
The openapi export now uses it too and reads the draft_hash first, in
its own short read: if the draft changes in between, the hash is older
than the DSL and a later import refuses with draft_changed instead of
overwriting the edit. A missing app answers not_found; a missing draft
or version keeps draft_not_found and version_not_found.
2026-10-14 03:01:27 -07:00
GareArc 9d94ba98ce test(api): use real objects instead of mocks in the openapi build-loop tests
Main now rejects new Mock, MagicMock and SimpleNamespace calls in tests.
Rewrite the tests this branch added to use real rows on the sqlite
session, real services and contexts, and small recorders. Also set config
through config_overrides, and give the starter-draft test a signal with
no receivers so its result doesn't depend on test order.
2026-10-14 02:35:27 -07:00
GareArc dea824398a Merge origin/main into feat/openapi-app-build-loop 2026-10-14 01:57:10 -07:00
GareArc 65830354e4 fix(api): offer a form token in chat history only while the form waits
A timed-out or expired form kept its token, so the chat rendered live
buttons for it. Now that the snapshot drops forms that are no longer
waiting, a click on such a form waited for a pause that never came.
Without a token the buttons are disabled next to the expired tip.
2026-10-14 01:50:14 -07:00
33b1c57f9d feat: document API errors per code and narrow them with oRPC defined errors (#44001)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-10-14 08:25:50 +00:00
D41910 e421dcc1f5 fix(dify-agent): verify E2B binding Home as well as Workspace on acquire (#44014) 2026-10-14 07:50:07 +00:00
非法操作 c11b36c70a feat: support permanent deletion of monthly workflow archives (#44052) 2026-10-14 07:46:14 +00:00
2bb1b11334 test: use real agent config and tool call objects (#43582)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-14 07:08:04 +00:00
e6a94853c3 test: replace 50 agent chat doubles with real runtimes (#43580)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-14 07:08:03 +00:00
c07938b000 test: use real audio plugin runtimes (#43577)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-14 07:08:02 +00:00
2a598012d1 test: replace 50 workflow, catalogue and token lock doubles (#43575)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-14 07:08:01 +00:00
020b02c954 test: prevent new mocks and constructor-bypassing test subclasses (#43572)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-14 07:08:01 +00:00
pei711andzjp fcd2f4eb18 fix(agent): keep replayed tool call IDs stable (#43796)
Co-authored-by: zjp <你的邮箱>
2026-10-14 06:44:10 +00:00
Eddy ZHANG ba5532ace0 chore(api): clear ruff debt in strict core unit tests (#44042) 2026-10-14 04:44:53 +00:00
Eddy ZHANG 2ef9277e13 refactor(api): enable strict typing for Notion provider tests (#44040) 2026-10-14 04:44:53 +00:00
wangxiaoleiandyunlu.wen 7a02240701 feat: support clean workspace related resource (#43803)
Co-authored-by: yunlu.wen <yunlu.wen@dify.ai>
2026-10-14 04:44:38 +00:00
Eddy ZHANG a408d1d031 chore(api): clear ruff debt in strict services unit tests (#44041) 2026-10-14 04:44:28 +00:00
GareArc 08d5c18d2f Merge origin/main into feat/openapi-app-build-loop 2026-10-13 20:00:43 -07:00
林玮 (Jade Lin) c64d9061ce feat(api): publish marketplace templates as ifpkg (#43990) 2026-10-14 02:34:16 +00:00
Eddy ZHANG 4de1be5342 refactor(api): enable strict typing for datasource manager tests (#44032) 2026-10-14 02:13:40 +00:00
Eddy ZHANG db2330dfc0 chore(api): drop stale unit-test ruff per-file ignores (#44033) 2026-10-14 02:13:14 +00:00
Wu Tianwei e2ae06ab07 fix(web): hide Agent template creation in CE and EE (#44035) 2026-10-14 02:03:31 +00:00
Xiyuan Chen f43d1ae77e fix(api): sort installed apps without NULLS LAST for MySQL (#44029) 2026-10-14 00:53:28 +00:00
Juhyuk choi cc4aaebc97 fix(web): keep hourly runs on the right date at month end (#43925) 2026-10-13 16:59:00 +00:00
XiaoBa 51a8dba933 fix(api): preserve creator RBAC access across app and RAG pipeline creation (#43941) 2026-10-13 16:56:49 +00:00
XiaoBa 804fac75e0 fix(rbac): append default bindings in app_rbac initializer (#43088) 2026-10-13 16:56:10 +00:00
haloneko 6b9bb4c7e8 refactor: decode inspector pub/sub payloads via pydantic (#43998) 2026-10-13 15:50:49 +00:00
cd0202f0eb test: exercise real snippet DSL workflows and completion queues (#43570)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:10 +00:00
0ce5423833 test: exercise real quota provider catalogs (#43569)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:09 +00:00
45c4b43b1b test: use real quota values and reservations (#43568)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:08 +00:00
b31c4dbeee test: exercise real prompt model runtime (#43567)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:07 +00:00
f0f412dba7 test: use real snippet generation services (#43566)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:06 +00:00
8289ea972d test: exercise real web access and OTEL spans (#43565)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:05 +00:00
8a0b672cd8 test: exercise real enterprise OTLP exporters (#43564)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:04 +00:00
6bb84c3892 test: use real account service composition (#43563)
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: Byron Wang <byron@dify.ai>
2026-10-13 14:59:03 +00:00
Asuka MinatoandCodex 17383fb3df test: use real workspace skill services (#43562)
Co-authored-by: Codex <codex@openai.com>
2026-10-13 14:59:02 +00:00
Asuka MinatoandCodex 1b577d73d6 test: use real completion runner collaborators (#43547)
Co-authored-by: Codex <codex@openai.com>
2026-10-13 14:59:01 +00:00
Asuka MinatoandCodex 783e7e1462 test: use real Word extractor dependencies (#43546)
Co-authored-by: Codex <codex@openai.com>
2026-10-13 14:59:00 +00:00
Asuka MinatoandCodex 13d2ba0cc0 test: use concrete extractor element fixtures (#43542)
Co-authored-by: Codex <codex@openai.com>
2026-10-13 14:58:59 +00:00
Asuka MinatoandCodex 148b7bc433 test: use concrete agent chat generator recorders (#43541)
Co-authored-by: Codex <codex@openai.com>
2026-10-13 14:58:58 +00:00
Eddy ZHANG 283371bb06 refactor(api): enable strict typing for app config manager tests (#43988) 2026-10-13 14:57:44 +00:00
Eddy ZHANG 9a3deb80bf refactor(api): enable strict typing for top-level services tests (#43989) 2026-10-13 14:52:57 +00:00
Eddy ZHANG cfcd7648f1 refactor(api): enable strict typing for agent v2 output tests (#43987) 2026-10-13 14:49:45 +00:00
Stephen ZhouandClaude Opus 5.5 8a237c6daf fix(api): return 415 for unsupported pipeline upload file types (#44012)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 12:06:56 +00:00
yyh 6908f4d837 fix(web): prevent workspace search focus ring clipping (#44007) 2026-10-13 10:43:14 +00:00
Stephen ZhouandClaude Opus 5.5 6c537c4a62 fix(api): keep Swagger docs through RBAC and web edition guards (#44000)
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 10:31:34 +00:00
GareArc 30936463eb chore(openapi): regenerate contracts 2026-10-13 02:14:04 -07:00
GareArc 1645ee14ee fix(openapi): gate describe.model_provider's credential hint on provider status
The hint to ask the user for credentials showed whenever the caller could not
see a saved credential, even when the provider was already active through one
it could not see. Gate it on the provider's configured status, as
describe.tool_provider does.
2026-10-13 02:13:38 -07:00
GareArc 8baab49490 fix(openapi): answer a disabled Service API with service_api_disabled and a set.service_api hint
The gate raised a bare Forbidden, so the body had the generic forbidden code
and no next step. Raise ServiceApiDisabled, whose hint holds the op that turns
the Service API on (set.service_api.agent for agent apps) with app_id and
enabled ready.
2026-10-13 02:12:12 -07:00