Commit Graph

34 Commits

Author SHA1 Message Date
f0fa3e5dc1 feat: add rbac_permission_required decorator 2026-06-08 21:04:20 +08:00
4af953d86b Merge branch 'main' into feat/rbac 2026-06-05 10:26:17 +08:00
b67c3a5f76 refactor(api): migrate tenant/user via DI for several endpoints (#37026) 2026-06-04 05:52:59 +00:00
4c15e16f59 Merge remote-tracking branch 'upstream/main' into feat/rbac
# Conflicts:
#	.github/workflows/cli-tests.yml
#	api/clients/agent_backend/__init__.py
#	api/clients/agent_backend/request_builder.py
#	api/controllers/console/app/app.py
#	api/controllers/console/app/mcp_server.py
#	api/controllers/console/workspace/members.py
#	api/controllers/openapi/__init__.py
#	api/controllers/openapi/_models.py
#	api/controllers/openapi/account.py
#	api/controllers/openapi/app_run.py
#	api/controllers/openapi/apps.py
#	api/controllers/openapi/apps_permitted_external.py
#	api/controllers/openapi/auth/__init__.py
#	api/controllers/openapi/auth/composition.py
#	api/controllers/openapi/auth/pipeline.py
#	api/controllers/openapi/files.py
#	api/controllers/openapi/human_input_form.py
#	api/controllers/openapi/workflow_events.py
#	api/controllers/openapi/workspaces.py
#	api/core/workflow/node_factory.py
#	api/core/workflow/nodes/agent_v2/agent_node.py
#	api/core/workflow/nodes/agent_v2/runtime_request_builder.py
#	api/libs/oauth_bearer.py
#	api/models/agent_config_entities.py
#	api/openapi/markdown/openapi-swagger.md
#	api/services/account_service.py
#	api/tests/unit_tests/clients/agent_backend/test_request_builder.py
#	api/tests/unit_tests/controllers/console/test_workspace_members.py
#	api/tests/unit_tests/controllers/console/workspace/test_members.py
#	api/tests/unit_tests/controllers/openapi/auth/test_composition.py
#	api/tests/unit_tests/controllers/openapi/auth/test_pipeline.py
#	api/tests/unit_tests/controllers/openapi/conftest.py
#	api/tests/unit_tests/controllers/openapi/test_account.py
#	api/tests/unit_tests/controllers/openapi/test_app_run_streaming.py
#	api/tests/unit_tests/controllers/openapi/test_human_input_form.py
#	api/tests/unit_tests/controllers/openapi/test_workflow_events_openapi.py
#	api/tests/unit_tests/core/workflow/nodes/agent_v2/test_agent_node.py
#	api/tests/unit_tests/core/workflow/nodes/agent_v2/test_runtime_request_builder.py
#	api/tests/unit_tests/libs/test_oauth_bearer_rate_limit_ordering.py
#	api/tests/unit_tests/libs/test_oauth_bearer_require_scope.py
#	api/tests/unit_tests/libs/test_workspace_member_helper.py
#	api/tests/unit_tests/services/test_oauth_device_flow.py
#	cli/AGENTS.md
#	cli/ARD.md
#	cli/package.json
#	cli/src/api/account-sessions.ts
#	cli/src/api/app-meta.test.ts
#	cli/src/api/workspaces.ts
#	cli/src/auth/file-backend.test.ts
#	cli/src/auth/file-backend.ts
#	cli/src/auth/hosts.test.ts
#	cli/src/auth/hosts.ts
#	cli/src/cache/app-info.test.ts
#	cli/src/cache/app-info.ts
#	cli/src/cache/nudge-store.test.ts
#	cli/src/cache/nudge-store.ts
#	cli/src/commands/_shared/authed-command.ts
#	cli/src/commands/auth/devices/_shared/devices.test.ts
#	cli/src/commands/auth/devices/_shared/devices.ts
#	cli/src/commands/auth/devices/list/index.ts
#	cli/src/commands/auth/login/index.ts
#	cli/src/commands/auth/login/login.test.ts
#	cli/src/commands/auth/login/login.ts
#	cli/src/commands/auth/logout/index.ts
#	cli/src/commands/auth/logout/logout.test.ts
#	cli/src/commands/auth/logout/logout.ts
#	cli/src/commands/auth/status/index.ts
#	cli/src/commands/auth/status/status.test.ts
#	cli/src/commands/auth/status/status.ts
#	cli/src/commands/auth/whoami/index.ts
#	cli/src/commands/auth/whoami/whoami.test.ts
#	cli/src/commands/auth/whoami/whoami.ts
#	cli/src/commands/config/get/index.ts
#	cli/src/commands/config/get/run.test.ts
#	cli/src/commands/config/get/run.ts
#	cli/src/commands/config/path/index.ts
#	cli/src/commands/config/set/index.ts
#	cli/src/commands/config/set/run.test.ts
#	cli/src/commands/config/set/run.ts
#	cli/src/commands/config/unset/index.ts
#	cli/src/commands/config/unset/run.test.ts
#	cli/src/commands/config/unset/run.ts
#	cli/src/commands/config/view/index.ts
#	cli/src/commands/config/view/run.test.ts
#	cli/src/commands/config/view/run.ts
#	cli/src/commands/describe/app/run.test.ts
#	cli/src/commands/describe/app/run.ts
#	cli/src/commands/env/list/run-list.ts
#	cli/src/commands/get/app/run.ts
#	cli/src/commands/get/workspace/run.ts
#	cli/src/commands/resume/app/run.ts
#	cli/src/commands/run/app/_strategies/streaming-structured.ts
#	cli/src/commands/run/app/_strategies/streaming-text.ts
#	cli/src/commands/run/app/handlers.ts
#	cli/src/commands/run/app/hitl-render.ts
#	cli/src/commands/run/app/run.test.ts
#	cli/src/commands/run/app/run.ts
#	cli/src/commands/run/app/stream-handlers.ts
#	cli/src/commands/tree.generated.ts
#	cli/src/commands/version/index.ts
#	cli/src/env/registry.ts
#	cli/src/errors/format.ts
#	cli/src/util/browser.ts
#	cli/src/version/info.ts
#	cli/src/version/nudge.test.ts
#	cli/src/version/nudge.ts
#	cli/src/version/probe.test.ts
#	cli/src/version/probe.ts
#	cli/src/version/render.ts
#	cli/src/workspace/resolver.ts
#	cli/tsconfig.json
#	eslint-suppressions.json
#	packages/contracts/generated/api/console/apps/types.gen.ts
#	packages/contracts/generated/api/console/apps/zod.gen.ts
#	packages/contracts/generated/api/openapi/orpc.gen.ts
#	packages/contracts/generated/api/openapi/types.gen.ts
#	packages/contracts/generated/api/openapi/zod.gen.ts
#	packages/dify-ui/README.md
#	pnpm-lock.yaml
#	web/app/components/app/app-publisher/index.tsx
#	web/app/components/app/app-publisher/sections.tsx
#	web/app/components/app/create-app-modal/__tests__/index.spec.tsx
#	web/app/components/app/create-app-modal/index.tsx
#	web/app/components/app/duplicate-modal/__tests__/index.spec.tsx
#	web/app/components/base/chip/index.tsx
#	web/app/components/datasets/list/dataset-card/index.tsx
#	web/app/components/datasets/list/datasets.tsx
#	web/app/components/datasets/settings/form/components/basic-info-section.tsx
#	web/app/components/rag-pipeline/components/rag-pipeline-header/run-mode.tsx
#	web/app/components/tools/edit-custom-collection-modal/index.tsx
#	web/app/components/tools/mcp/__tests__/index.spec.tsx
#	web/app/components/tools/mcp/index.tsx
#	web/app/components/tools/provider-list.tsx
#	web/app/components/tools/workflow-tool/__tests__/configure-button.spec.tsx
2026-05-28 14:01:01 +08:00
2cf03f3576 chore: example of current user id dep injection (#36588)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-05-27 10:15:21 +08:00
135e01930b chore: example of current user id dep injection (#36588)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-05-25 11:31:40 +00:00
603532863d chore: add UUID/str type annotations to api endpoints for files in api/controllers/console/datasets (#36560) 2026-05-24 07:59:16 +00:00
ea5e487d3c fix(api): stop returning 204 with response body and add CI check (#36489) 2026-05-21 16:20:34 +00:00
b04b4449db chore(api): annotate simple contract responses (#36331)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org>
2026-05-19 06:13:20 +00:00
b90fe73c96 fix(api): prevent cross-tenant external API use-check disclosure (#34744) 2026-04-10 03:23:32 +00:00
43c48ba4d7 fix: add tenant/dataset ownership checks to prevent IDOR vulnerabilities (#34436)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-04-02 05:45:20 +00:00
ff9cf6c7a4 refactor: replace dict with BedrockRetrievalSetting BaseModel in knowledge_service (#34080)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2026-03-25 21:33:24 +09:00
8ec4233611 fix: doc not gen bug (#31547)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Stephen Zhou <38493346+hyoban@users.noreply.github.com>
2026-01-27 20:19:39 +09:00
E.G
f6be9cd90d refactor: replace request.args.get with Pydantic BaseModel validation (#31104)
Co-authored-by: GlobalStar117 <GlobalStar117@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2026-01-27 10:48:42 +08:00
5bf4114d6f fix: increase name length limit in ExternalDatasetCreatePayload (#31000)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org>
2026-01-14 22:13:53 +09:00
05fe92a541 refactor: port reqparse to BaseModel (#28993)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-12-08 15:31:19 +09:00
aab95d0626 fix: Failed to load API definition (#28509)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Asuka Minato <i@asukaminato.eu.org>
2025-11-24 21:44:09 +09:00
e0824c2d93 api -> console_ns (#28246)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
2025-11-24 10:04:11 +08:00
1a2f8dfcb4 use deco (#28153)
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-11-21 14:25:53 +08:00
4488c090b2 fluent api (#27093)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-19 12:54:41 +09:00
5937a66e22 Sync same logic for datasets. (#27056) 2025-10-18 11:49:20 +08:00
cced33d068 use deco to avoid current_user (#26077)
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-10-16 15:45:51 +09:00
f79d8baf63 Fix: Enable Pyright and Fix Typing Errors in Datasets Controller (#26425)
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
2025-09-30 00:38:59 +09:00
85cda47c70 feat: knowledge pipeline (#25360)
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: twwu <twwu@dify.ai>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
Co-authored-by: jyong <718720800@qq.com>
Co-authored-by: Wu Tianwei <30284043+WTW0313@users.noreply.github.com>
Co-authored-by: QuantumGhost <obelisk.reg+git@gmail.com>
Co-authored-by: lyzno1 <yuanyouhuilyz@gmail.com>
Co-authored-by: quicksand <quicksandzn@gmail.com>
Co-authored-by: Jyong <76649700+JohnJyong@users.noreply.github.com>
Co-authored-by: lyzno1 <92089059+lyzno1@users.noreply.github.com>
Co-authored-by: zxhlyh <jasonapring2015@outlook.com>
Co-authored-by: Yongtao Huang <yongtaoh2022@gmail.com>
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: Joel <iamjoel007@gmail.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: nite-knite <nkCoding@gmail.com>
Co-authored-by: Hanqing Zhao <sherry9277@gmail.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Harry <xh001x@hotmail.com>
2025-09-18 12:49:10 +08:00
07d383ffaa refactor: update API routes and documentation for app and datasets endpoints (#25628) 2025-09-15 10:59:11 +08:00
18dce66443 try flask_restful -> flask_restx (#24310)
Signed-off-by: -LAN- <laipz8200@outlook.com>
Co-authored-by: -LAN- <laipz8200@outlook.com>
2025-08-24 13:45:47 +08:00
bfa652f2d0 fix: metadata filtering condition variable unassigned; fix External K… (#19208) 2025-05-07 14:52:09 +08:00
8537abfff8 chore: avoid repeated type ignore noqa by adding flask_restful and flask_login in mypy import exclusions (#19224) 2025-05-06 11:58:49 +08:00
136995d2a1 fix: change delete app status code from 204 to 200 (#18398)
Co-authored-by: devxing <devxing@gmail.com>
Co-authored-by: crazywoola <427733928@qq.com>
2025-04-27 12:12:46 +08:00
5d72003ebb Remove dead code (#17899) 2025-04-11 20:33:52 +08:00
56e15d09a9 feat: mypy for all type check (#10921) 2024-12-24 18:38:51 +08:00
9ac2bb30f4 Feat/add-remote-file-upload-api (#9906) 2024-11-01 15:51:22 +08:00
42b02b3a5f Fix/agent external knowledge retrieval (#9241) 2024-10-11 19:21:03 +08:00
9d221a5e19 external knowledge api (#8913)
Co-authored-by: Yi <yxiaoisme@gmail.com>
2024-09-30 15:38:43 +08:00