2652 Commits

Author SHA1 Message Date
Erhan Aydın
72b7b02113 feat(data_source): add Azure DevOps connector (#18715)
Adds Azure DevOps as a new data source, syncing repository files and pull requests. Supports both hosted and self-hosted. Excludes wikis, work items, and binaries. Includes checkpoint/resume, change detection via commit IDs, and handles Azure's quirky 203 auth response. Tests passed against real deployment.
2026-08-25 20:10:43 +08:00
Lynn
45a47d9d45 Fix(go): PaddleOCR -> PaddleOCR.local, PaddleOCR.net -> PaddleOCR (#18747) 2026-08-25 20:02:01 +08:00
chanx
5c88ee425e fix(web): keep Firefox chat auto-scroll pinned to the bottom (#18736) 2026-08-25 17:29:13 +08:00
balibabu
40b5845e26 Fix: Add the chat model to the Python version of the dataset configuration page. (#18735) 2026-08-25 17:28:59 +08:00
chanx
6916ddf17e fix(web): require chunk content when creating or editing a chunk (#18739) 2026-08-25 17:27:45 +08:00
chanx
ff4109c508 fix(web): fall back a page when the dataset file list empties (#18738) 2026-08-25 17:25:53 +08:00
balibabu
c4175c3880 Fix: After selecting upload, the document is parsed directly, but the parsing progress cannot be seen. (#18741) 2026-08-25 17:25:19 +08:00
Wang Qi
92c69db79e Refactor: expose knn top_k and knn num_candidaties (#18737)
Follow on #18300
2026-08-25 17:16:36 +08:00
balibabu
67e744f5d1 Fix: Modify the error message for empty chat responses. (#18730) 2026-08-25 14:29:13 +08:00
buua436
3a836911d1 fix: support hierarchical Wiki topic navigation (#18721) 2026-08-25 13:59:27 +08:00
euvre
9c00ef103c fix(web): always show copy button on floating chat widget replies (#18527) 2026-08-25 13:45:34 +08:00
balibabu
0d747c6a3f Fix: After deleting all compiled entities, returning to this page will show an empty data entry. (#18724) 2026-08-25 13:35:28 +08:00
euvre
bf6854c9ff fix(web): chat settings panel overlapped by chat input on narrow viewports (#18723) 2026-08-25 13:29:32 +08:00
chanx
12ec6ee994 fix(setting-model): stop silently dropping a duplicate-named provider instance (#18722) 2026-08-25 13:21:13 +08:00
euvre
31c8bb30ab fix(web): make overflowing card description tooltips scrollable (#18700) 2026-08-25 13:19:41 +08:00
euvre
3d5563fd9e fix(web): make chat attachment images click-to-zoomable (#18259) 2026-08-25 13:19:27 +08:00
chanx
578886ba1a fix(web): keep multi-select options in their declared order while searching (#18672) 2026-08-25 13:17:17 +08:00
balibabu
41fa68d5e5 Fix: Add a custom placeholder to SelectWithSearch (#18719) 2026-08-25 13:16:45 +08:00
euvre
4c7846a449 fix(bot): align chatbot completion final frame and history persistence with python (#18526) 2026-08-25 13:11:48 +08:00
euvre
97812c9ce5 fix(web): show agent opening statement in embedded floating widget (#18517) 2026-08-25 13:11:19 +08:00
euvre
830b6740cc Fix: show linked knowledge base names instead of IDs when searching in the "Link to knowledge base" dialog (#18581) 2026-08-25 13:09:32 +08:00
Try everything
edd3323055 fix(web): ignore IME composition Enter in tag input (#17322)
### Summary

Fix IME input breaking in EditTag component. Enter key during Chinese/Japanese/Korean composition would incorrectly commit an incomplete tag. Added e.nativeEvent.isComposing guard so Enter only adds a tag after composition ends. Tests added.
2026-08-25 12:51:23 +08:00
Try everything
4457764e11 fix(web): return real navigation state from history.location getter (#17324)
### Summary

Fix history.location.state always returning undefined in simple-history-util.ts. The getter incorrectly referenced the module instance (history.state) instead of the browser API (window.history.state). Now reads from window.history.state. Unit tests added.
2026-08-25 12:50:55 +08:00
Try everything
de28771511 fix: remove trailing space in human-readable duration labels (#17317)
### Summary

Fix formatSecondsToHumanReadable trailing space bug. Durations like 60s returned "1m " instead of "1m". Changed to build parts without trailing spaces and join with a single space. Unit tests added. Affects dataset overview, document list, and dataflow views.
2026-08-25 12:50:17 +08:00
Brian Sparker
c6b2923387 feat(agent): add You.com search tool (#18583)
### Summary

@JinHai-CN — the agent tool you asked for in #18478, as its own PR.

Adds `YouComSearch` to the agent tool set, modeled on the Keenable tool
(#16233) rather than Querit's: You.com exposes a small parameter
surface, so this needs a two-field form rather than a bespoke form
suite. **+594 lines**, close to Keenable's +392 and well under Querit's
+3527.

Independent of #18478. That PR wires You.com into chat retrieval; this
one is the agent canvas node. Neither depends on the other and they
share no lines.

---------

Co-authored-by: Brian Sparker <brainsparker@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-25 12:16:40 +08:00
Baojiang Lee
06bdc16a7f fix(wiki): guard generation without compilation config (#18695)
### Summary

Closes #18683.

The Wiki artifact view previously enabled **Generate** whenever a
dataset had parsed chunks. Built-in datasets can have chunks without an
ingestion pipeline, so the backend finds no wiki-eligible documents and
exits without generating pages.

This PR adds a focused frontend eligibility check so Wiki generation is
offered only when the dataset has parsed chunks and is associated with
an ingestion pipeline.
2026-08-25 11:47:25 +08:00
Wang Qi
4c6f745c1e Refactor: rename prefetch_size to rerank_candidates (#18718) 2026-08-25 11:35:53 +08:00
He Wang
2ef9d373ee feat(bedrock): support API key authentication (#18301)
### Summary

Closes #17848.

This replaces #17958 with a smaller implementation focused on the
original requirement. The previous PR gradually expanded beyond the
necessary scope; the optional custom endpoint extension is intentionally
excluded from this version.

- Add request-scoped Bedrock API key authentication to the Python
Bedrock adapters and Go chat runtime.
- Discover and persist models available to API key instances, so users
do not need to manually enter the model type, model name, or maximum
token count.
- Add API Key mode to the existing Bedrock settings UI and refresh the
model and default-model lists after instance changes.
- Preserve selected models during credential-only updates while keeping
the existing SigV4 authentication modes unchanged.
- Return a clear error for unsupported API-key reranking.
- Document instance-scoped authentication and short-term API key
guidance.
2026-08-25 11:08:24 +08:00
Öndery
65d8301ea3 fix(models): pass selected models into verify and catch constructor errors (#17132)
Two fixes not yet on main:

Pass picker-selected models into Verify – useVerifyProvider now includes modelInfoRef in the verify payload so the backend can verify the user's actual selection.

Guard model construction – Wrap EmbeddingModel/ChatModel init in try/except so failures are recorded as per-model FAIL instead of aborting the whole verify call.

Also: later failures now overwrite previous successes per review feedback.
2026-08-25 11:07:08 +08:00
balibabu
d6382e4b41 Feat: The extractor operator can handle multiple extraction tasks simultaneously. (#18717) 2026-08-25 10:24:58 +08:00
Sbaaoui Idriss
bfe07974dc fix: normalize model types in _factory_model_types and update calculate_model_type (#18685) 2026-08-25 09:46:46 +08:00
euvre
2611ea5bdf fix(web): hide empty thinking strip in floating chat widget (#18608) 2026-08-24 19:24:08 +08:00
Wang Qi
5659476a30 Fix: correct rerank #17296 - add prefetch_size (#18300) 2026-08-24 16:09:07 +08:00
buua436
f37b6fc439 fix: account for checkpointed ingestion progress (#18667)
Preserve completed component progress when an ingestion task resumes from a checkpoint. Checkpointed operators are skipped and do not emit lifecycle events again, which previously caused the document progress to
remain below 100%.
2026-08-24 14:28:05 +08:00
Jin Hai
23a071157d Revert "port smart-reasoning agentic RAG to eino ADK" (#18670)
Reverts infiniflow/ragflow#18654
2026-08-24 12:03:11 +08:00
Ilya Bogin
e1fff9b3ea fix(web): use the real Keenable mark for the tool icon (#18660)
### Summary

The Keenable tool icon added in #18341 was a placeholder I drew: a
generic blue rounded square with a magnifying glass, not the Keenable
brandmark. Swapped for the mark from our brand guidelines.

Same shape as the neighbouring tool logos: one `<svg>` with a `viewBox`
and no fixed width/height, so it is sized by the CSS around it, and
transparent, so it reads on the light and the dark theme alike.
Frontend-only, one file.
2026-08-24 10:45:09 +08:00
chanx
26581955d5 fix(web): resize the mind map graph when its container changes size (#18616) 2026-08-24 10:35:55 +08:00
euvre
743491b8fb fix(ingestion): honor auto-keyword/auto-question top_n sliders in extractor prompts (#18632) 2026-08-24 10:25:04 +08:00
chanx
e3b1e871e7 fix(web): give each provider instance card its own surface (#18620) 2026-08-24 10:20:00 +08:00
Zhichang Yu
2db8eb6c91 port smart-reasoning agentic RAG to eino ADK (#18654)
Ports the smart-reasoning (agentic RAG) conversation mode to the eino ADK, with Go retrieval tools (grep_chunks, search_chunks, list_chunks), deep-read XML output, and frontend agent-mode wiring.
2026-08-23 20:54:40 +08:00
chanx
1a0c896180 fix(web): accept a single API key for Baidu YiYan (#18611) 2026-08-21 19:24:52 +08:00
euvre
dab8cfef3a Fix: Owner filter count not updated after deleting a dataset (#18623) 2026-08-21 19:08:49 +08:00
euvre
7f9364f52e fix(web): keep multi-select count in sync after deleting a single file (#18589) 2026-08-21 19:07:30 +08:00
balibabu
591ea7a969 Refactor: Refactored the frontend logic for handling different backend services to use pickByBackend, thereby improving code clarity and maintainability. (#18614) 2026-08-21 19:06:20 +08:00
euvre
928743ff40 fix(web): clicking anywhere in a switch setting row toggles the switch (#18567) 2026-08-21 15:14:45 +08:00
euvre
c22e53c96b fix(search): do not jump to previous search results on empty query (#18520) 2026-08-21 14:27:27 +08:00
euvre
a50477089d fix(search): fix layout clipping when search page is not fullscreen (#18519) 2026-08-21 14:16:05 +08:00
balibabu
cf96d6430d Feat: Rewrite the Go-based extractor operator form. (#18600) 2026-08-21 13:22:52 +08:00
euvre
71188aadcd fix(file): reject folder names containing "/" in create/rename (#18586) 2026-08-21 11:00:03 +08:00
chanx
1698073518 fix(web): preserve entire subtree of title-matching nodes in TreeSelect filter (#18561) 2026-08-21 10:11:17 +08:00