dify/api/core
Jyong 57d03faa98 fix(workflow): let the KnowledgeFS retrieval node run on text or image alone
The KnowledgeFS retrieval node treated the query text as mandatory even though
a query image is a complete input on its own. Text and image are now
alternatives: the node needs at least one of them, never both.

- web: drop the required mark from the query text field; the checklist fails
  only when neither variable is bound (new i18n message in every locale).
- api: make `query_variable_selector` optional with a model-level rule that
  one of the two selectors must be set, and only map the query variable when
  it is bound. At runtime an empty text without images is a configuration
  error; an image-only query retrieves with an empty text, merges spaces on
  their own scores instead of a text reranker, skips automatic metadata
  extraction, and skips the text-based failed-query capture.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015zw5G5SX3HmVfnZof6YWAc
2026-09-03 01:52:19 -04:00
..
agent Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-08-27 10:06:48 +08:00
app Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-09-01 09:45:49 +08:00
base fix(api): align Service API OpenAPI contract (#41248) 2026-08-25 10:54:14 +00:00
callback_handler chore: clean Db session from service (#38227) 2026-07-08 03:07:27 +00:00
datasource Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-08-07 09:55:10 +08:00
db fix(db): parameterize sessionmaker with Session (#30612) 2026-01-06 15:23:50 +08:00
entities fix(api): restore Service API OpenAPI semantics (#41274) 2026-08-26 05:05:36 +00:00
errors chore: drop unnecessary | None on LLMError and Mail.send (#36147) 2026-05-14 03:22:00 +00:00
extension fix(extension): chain original exception in APIBasedExtensionRequestor per PEP 3134 (#40810) 2026-08-15 08:48:28 +00:00
external_data_tool refactor: add missing @override decorator to remaining MCP, Jieba, embeddings, and misc subclasses (#36528) 2026-05-22 13:45:35 +00:00
file fix(api): centralize remote file retrieval (#36399) 2026-06-01 09:25:08 +00:00
helper refactor(api): decouple system features and web adapters (#40772) 2026-09-01 11:50:52 +00:00
llm_generator refactor: pass db.session explicitly in instruction_modify_workflow (#37403) (#40827) 2026-08-30 00:48:00 +00:00
logging fix(api): restore deadlock-safe identity logging 2026-08-14 11:21:46 +08:00
mcp fix(workflow): block manual runs for trigger workflows (#41519) 2026-08-31 09:30:52 +00:00
memory perf(memory): batch-load message files in TokenBufferMemory to remove N+1 queries (#38002) 2026-07-03 01:59:48 +00:00
moderation feat(api): track credit usage contexts (#41181) 2026-08-25 10:21:32 +00:00
ops fix(api): preserve tracing configuration boundaries (#41403) 2026-08-27 22:11:32 +08:00
plugin Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-09-02 10:31:10 +08:00
prompt feat(workflow): support human input in loop and iteration (#39243) 2026-08-03 02:24:18 +00:00
rag feat(knowledge-fs): add automatic metadata filtering to retrieval node 2026-09-02 02:55:12 -04:00
rbac Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-08-27 10:06:48 +08:00
repositories feat(workflow): support human input in loop and iteration (#39243) 2026-08-03 02:24:18 +00:00
schemas chore: port isinstance to match case (#37271) 2026-06-18 00:18:03 +00:00
telemetry fix: add missing metrics back and enhance typing (#40935) 2026-08-21 09:46:45 +00:00
tools Merge remote-tracking branch 'origin/main' into deploy/konwledge 2026-08-27 10:06:48 +08:00
trigger refactor(api): migrate workspace account endpoints to BaseModel (#37954) 2026-07-06 06:57:40 +00:00
workflow fix(workflow): let the KnowledgeFS retrieval node run on text or image alone 2026-09-03 01:52:19 -04:00
__init__.py Fix basedpyright type errors (#25435) 2025-09-10 01:54:26 +08:00
credit_usage.py fix(api): attribute Skill Builder credit usage (#41290) 2026-08-26 07:02:45 +00:00
hosting_configuration.py refactor(api): consolidate deployment edition handling (#40142) 2026-08-11 07:39:01 +00:00
indexing_runner.py feat(api): track credit usage contexts (#41181) 2026-08-25 10:21:32 +00:00
model_context.py feat(api): track credit usage contexts (#41181) 2026-08-25 10:21:32 +00:00
model_manager.py feat(api): track credit usage contexts (#41181) 2026-08-25 10:21:32 +00:00
provider_manager.py fix(api): migrate legacy model types during upgrade (#41326) 2026-08-27 02:00:33 +00:00