8591 Commits

Author SHA1 Message Date
balibabu
cf96d6430d Feat: Rewrite the Go-based extractor operator form. (#18600) 2026-08-21 13:22:52 +08:00
euvre
2686c494e2 fix(engine): return error instead of panic when NATS engine is uninitialized (#18536) 2026-08-21 11:53:55 +08:00
euvre
6a0fe78560 Fix: Go chat pipeline sends image blocks to text-only models (Zhipu GLM error 1210) (#18580) 2026-08-21 11:45:11 +08:00
euvre
7d81438503 fix(models): infer model types on catalog miss so Qwen VLMs show LLM+VLM tags (#18571) 2026-08-21 11:44:47 +08:00
euvre
0000a5bf70 Fix: propagate file rename to all linked knowledgebase documents (#18590) 2026-08-21 11:23:53 +08:00
euvre
ef6b336690 fix(memory): persist memory valid_at/forget_at as server-local time instead of UTC (#18538) 2026-08-21 11:22:45 +08:00
euvre
71188aadcd fix(file): reject folder names containing "/" in create/rename (#18586) 2026-08-21 11:00:03 +08:00
euvre
6893a0915e fix(agent): bind query field in agentbot completions and clean up failed first-touch sessions (#17844) 2026-08-21 10:15:16 +08:00
euvre
4fa895666b fix: implement Tongyi-Qianwen TTS via DashScope native endpoint (#17924) 2026-08-21 10:12:50 +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
Lynn
b8b35aa9ab Fix: kimi k3 temperature (#18564) 2026-08-21 10:11:06 +08:00
Wang Qi
169822105f Fix knowledge compilation to use pipeline LLM instead of default tenant LLM (#18572) 2026-08-21 09:58:26 +08:00
chanx
5b1ff4a67e fix(web): keep chat auto-scroll following streamed answers (#18570) dev-20260821 2026-08-21 09:42:31 +08:00
balibabu
525571941a Feat: Validate the knowledge base that was deleted from the search page. (#18522) 2026-08-21 09:40:31 +08:00
Loong
c15241c3a9 fix(agent): reset execution path for new sessions (#18532) 2026-08-20 22:42:55 +08:00
Jack
99e1c2eaca fix(parser): allow text output_format for audio family (#18575) 2026-08-20 22:41:01 +08:00
euvre
c87aa3b168 fix: store source key only in pipeline_operation_log.source_from (#18239) 2026-08-20 20:17:52 +08:00
Jin Hai
fd74a98510 Go: fix error handle (#18573)
As title

Signed-off-by: Jin Hai <haijin.chn@gmail.com>
2026-08-20 20:13:39 +08:00
Jack
295dc12cc5 fix(deepdoc): preserve covered cells through span injection so span tables keep all TSR rows (#18574) 2026-08-20 19:59:17 +08:00
Jack
f793a44f99 fix(deepdoc): dedup OCR substring fragments regardless of whitespace divergence (#18568) 2026-08-20 19:59:05 +08:00
Jan Kahmen
c7f22d49c7 fix(web): sanitize the parsed markdown tree instead of the string (GHSA-jv5f-3mqh-cxwf) (#17590)
### Summary

This PR sanitizes the parsed tree instead of the string:
`rehype-sanitize` runs after `rehype-raw` and before `rehype-katex`,
with one shared schema.
2026-08-20 19:40:49 +08:00
rsnetworkinginc
0067470903 fix: apply order_by return value in deep-pagination helpers (unordered OFFSET/LIMIT can skip/dupe rows) (#17325)
### Summary

The fix is one line per helper — assign the `order_by(...)` result back
so the
ordering is actually applied to the query.

Co-authored-by: rsnetworkinginc <rsnetworkinginc@users.noreply.github.com>
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-20 19:39:02 +08:00
buua436
64d928e45f fix: align wiki graph and dataset logs (#18566) 2026-08-20 19:38:40 +08:00
Guofang.Tang
4304a3b7c6 feat(agent): support OpenAI-compatible responses (#18316)
### Summary

Complete the Go Agent OpenAI-compatible response path for `POST
/api/v1/agents/chat/completions` when `openai-compatible` is true. This
endpoint is already documented and routed, but the Go implementation
returned a placeholder response instead of executing the Agent.
2026-08-20 19:13:38 +08:00
Try everything
181db3981b fix: render both initials for multi-word names in RAGFlowAvatar (#17320)
### Summary

`RAGFlowAvatar` renders a name-based fallback avatar (initials) when no
image is available.
2026-08-20 19:12:26 +08:00
Haruko386
2be70f34a9 feat[syncer]: implement data source Jira (#18558)
### Summary

As title
2026-08-20 19:11:41 +08:00
Haruko386
1e46cef2d5 refactor: simplify sync task service and harden scheduler recovery (#18550)
### Summary

As title
2026-08-20 19:11:23 +08:00
mkaaad
cab70fdac3 feat(syncer): add Moodle connector with checkpoint resume (#18554)
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2026-08-20 19:05:16 +08:00
euvre
cc28035881 fix(ingestion): show data pipeline column for builtin pipeline ingestion logs (#18484) 2026-08-20 19:04:12 +08:00
Wang Qi
9357f79eb4 Fix: go switch user from superuser to normal user error (#18537) 2026-08-20 18:03:30 +08:00
euvre
f9120a0cff fix(compilation-template): emit wiki presets with the contracted "example" key (#18549) 2026-08-20 17:44:50 +08:00
Wang Qi
76bff4c915 Fix: switch image/ppt/email/audio from General to pipeline, or switch back, it report error (#18555) 2026-08-20 17:34:51 +08:00
Lynn
f7a2848dd5 Fix: ensure tenant_ocr_id is added (#18560) 2026-08-20 17:11:47 +08:00
buua436
a3df588951 feat: improve incremental Wiki compilation (#18557) 2026-08-20 16:45:34 +08:00
Sevenzuo
1f0285ee9b fix: preserve blocking GaussDB advisory locks (#18506) 2026-08-20 16:39:43 +08:00
Christian Uhl
f806001b3f fix(db): make negative GET_LOCK timeouts work on MariaDB (#18529)
### Summary

The fix turns a negative timeout into a finite 60 second wait inside
`MysqlDatabaseLock`, which both servers accept. Callers keep expressing
"block until available", and the equivalent PostgreSQL and GaussDB work
on the same `-1` semantics (#16346, #18506) is untouched. Non-negative
timeouts keep their current behaviour.

---------

Co-authored-by: Krim <git@krim.dev>
2026-08-20 16:33:46 +08:00
Haruko386
baaa6554e8 fix: get two VLM model type when list all models (#18546)
### Summary

As title
2026-08-20 16:32:49 +08:00
Jack
4eec5e4f35 feat(chunker): enforce a hard token cap in the TokenChunker merge (#18525) 2026-08-20 16:28:20 +08:00
mkaaad
0b7ec8a916 feat(syncer): add R2 connector with checkpoint resume (#18548)
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Jin Hai <haijin.chn@gmail.com>
2026-08-20 16:26:49 +08:00
Christian Uhl
89d35d1b17 fix(auth): strip trailing slash from OIDC issuer before discovery (#18530)
### Summary

OIDC discovery builds its URL as
`f"{issuer}/.well-known/openid-configuration"`. Providers whose issuer
carries a trailing slash therefore get asked for a URL with a double
slash in it, which 404s. authentik is one of them: its issuer is
`https://auth.example.com/application/o/<app>/`, so the request goes to
`.../o/<app>//.well-known/openid-configuration` and login fails right at
the start with `Failed to fetch OIDC metadata`.

Stripping trailing slashes off the issuer before joining the well-known
path is enough. The `issuer` used later for ID token validation still
comes from the discovery document itself, so nothing else about the flow
changes.

Co-authored-by: Krim <git@krim.dev>
2026-08-20 16:25:29 +08:00
primorLee
3838c626aa fix(memory): make default prompts deterministic (#18547)
### Summary

Multi-type memory prompts were assembled from sets, so their instruction
and output sections could change order across Python processes with
different hash seeds. Because the generated default prompt is persisted
and later compared as a string, a restart could make an untouched
default look custom and prevent it from being regenerated when memory
types change.
2026-08-20 16:19:27 +08:00
Wangshu
77884f4a7c test: pin bare tenant_model.id resolution in resolve_model_config (#18528)
## Summary
- Adds a regression test for #18398

Fixes #18398

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-20 16:17:30 +08:00
YanZhang
a4f754a472 docs: add dataset docs & fix broken links in docs (#18553)
add dataset docs
fix broken links in docs
2026-08-20 16:12:23 +08:00
Haruko386
a88866f6b8 feat[syncer]: implement dingtalk AI table data source (#18539)
### Summary

As title
2026-08-20 16:10:08 +08:00
Haruko386
00ebe05dc5 fix: data source return two error once it occured (#18535)
### Summary

As title
2026-08-20 16:09:10 +08:00
Jack
20ee2dad22 fix(deepdoc): drop nested OCR boxes before table cell fill + expose 13/14 parity gaps (#18524) 2026-08-20 15:57:58 +08:00
Jack
d76c15e2a5 feat(title-chunker): enforce chunk_token_cap on the Go title-family chunks (#18455) (#18551) 2026-08-20 15:41:48 +08:00
jay77721
2022efa9fc refactor(ingestion): unify auto-metadata on modular metadata and hard-delete legacy flats (BuiltInMetadata carried, not LLM) (#18511) 2026-08-20 15:35:51 +08:00
Lynn
618c4599b1 Fix: handle tenant_llm without id (#18541) 2026-08-20 14:12:52 +08:00
Loi Nguyen
e8aeddc5f7 fix(dataset): preserve disabled RAPTOR and GraphRAG settings (#17665)
### Summary

Preserve explicitly saved `false` values for RAPTOR and GraphRAG when
hydrating the dataset Configuration form. The existing form defaults
still apply when either enable flag is absent.

Adds hook-level regression coverage for both explicit disablement and
default fallback behavior.

Fixes #17654
2026-08-20 13:46:28 +08:00