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.
### 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.
### 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.
### 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.
### 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>
### 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.
### 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.
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.
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%.
### 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.
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.