Commit graph

19485 commits

Author SHA1 Message Date
Timothy Jaeryang Baek
c9a52208da refac 2026-10-15 23:02:47 +04:00
Timothy Jaeryang Baek
7ca62fdf93 refac 2026-10-15 22:51:14 +04:00
Timothy Jaeryang Baek
0c56e39335 refac 2026-10-15 22:50:42 +04:00
Timothy Jaeryang Baek
99457b373e refac 2026-10-15 22:50:36 +04:00
Timothy Jaeryang Baek
6b87088eab refac 2026-10-15 22:46:17 +04:00
Timothy Jaeryang Baek
bbccff89c1 refac 2026-10-15 21:26:27 +04:00
Timothy Jaeryang Baek
3288fe010a refac 2026-10-15 18:02:26 +04:00
Timothy Jaeryang Baek
0b3812f285 refac 2026-10-15 17:56:56 +04:00
Timothy Jaeryang Baek
8132145936 refac 2026-10-15 17:42:03 +04:00
Timothy Jaeryang Baek
9d0aa791ad refac 2026-10-15 17:40:50 +04:00
Timothy Jaeryang Baek
b1e876896c refac 2026-10-15 17:37:55 +04:00
Timothy Jaeryang Baek
7dc91de86c refac 2026-10-15 17:08:00 +04:00
Timothy Jaeryang Baek
613eac51c5 refac 2026-10-15 15:53:18 +04:00
Timothy Jaeryang Baek
d0750f6617 refac 2026-10-15 15:42:54 +04:00
Timothy Jaeryang Baek
10ce0d2365 refac 2026-10-15 15:23:52 +04:00
Timothy Jaeryang Baek
1595c20130 refac 2026-10-15 15:08:59 +04:00
joaoback
673f587a86
i18n: add pt-BR translations for newly added UI items and consistency pass (#32440)
New **pt-BR** translations for items introduced in the latest releases, plus a consistency/quality pass across existing strings (grammar, tone, capitalization, pluralization). Placeholders and hotkeys preserved. No logic changes.
2026-10-15 14:07:04 +04:00
Timothy Jaeryang Baek
a087aa1deb refac 2026-10-15 13:59:45 +04:00
Classic298
f7c8ad012d
fix: requests authenticated with the x-api-key header are missing from the audit log (#32443)
With audit logging on, requests that used an API key in the x-api-key header (what Anthropic SDKs send) worked but never showed up in the audit log, because the audit check only looked for a Bearer token or a session cookie. These requests are now logged with the user the key belongs to, and this also covers a custom header set through CUSTOM_API_KEY_HEADER. Failed attempts with a wrong key in that header now appear in the log without a user, just like a wrong Bearer key. A malformed Authorization header with no other credential is no longer logged, since it can never authenticate.
2026-10-15 13:59:03 +04:00
G30
08f6023427
fix: a collaborator saving a shared knowledge base's name or description keeps its sharing (#32450) 2026-10-15 13:58:49 +04:00
G30
58b821a464
fix: searching for a tag whose chats are all archived no longer deletes the tag (#32452) 2026-10-15 13:12:19 +04:00
G30
fd47370e85
fix: an imported chat shows its tags (#32454) 2026-10-15 13:12:11 +04:00
G30
3c82fda4e8
fix: Continue Response continues the reply it was clicked under (#32456) 2026-10-15 13:12:00 +04:00
G30
9245e31ccb
Merge pull request #32458 from silentoplayz/fix/chat-scroll-after-leaving-no-error
fix: scrolling a chat right after leaving it no longer throws a TypeError
2026-10-15 13:11:49 +04:00
G30
f78e46ef44
Merge pull request #32459 from silentoplayz/fix/long-pdf-export-sliced
fix: long notes and chats download as PDF instead of failing
2026-10-15 13:11:40 +04:00
Timothy Jaeryang Baek
fb5431a09c refac
Some checks are pending
Python CI / Ruff Format (3.11) (push) Waiting to run
Python CI / Ruff Format (3.12) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args: free_disk:false name:main suffix:]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true USE_CUDA_VER=cu126 free_disk:true name:cuda126 suffix:-cuda126]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_CUDA=true free_disk:true name:cuda suffix:-cuda]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/arm64 runner:ubuntu-24.04-arm], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / merge (map[name:cuda suffix:-cuda]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:ollama suffix:-ollama]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:slim suffix:-slim]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda126, cuda126) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-slim, slim) (push) Blocked by required conditions
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_OLLAMA=true free_disk:false name:ollama suffix:-ollama]) (push) Waiting to run
Create and publish Docker images with specific build args / build (map[arch:linux/amd64 runner:ubuntu-latest], map[build_args:USE_SLIM=true free_disk:false name:slim suffix:-slim]) (push) Waiting to run
Create and publish Docker images with specific build args / merge (map[name:cuda126 suffix:-cuda126]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / merge (map[name:main suffix:]) (push) Blocked by required conditions
Create and publish Docker images with specific build args / notify-helm-charts (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (, main) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-cuda, cuda) (push) Blocked by required conditions
Create and publish Docker images with specific build args / copy-to-dockerhub (-ollama, ollama) (push) Blocked by required conditions
Frontend Build / Format & Build (push) Waiting to run
Frontend Build / Unit Tests (push) Waiting to run
2026-10-15 02:19:49 +04:00
Timothy Jaeryang Baek
eece23dd67 chore: bump 2026-10-15 00:47:01 +04:00
Classic298
91ec14682f
docs: start 0.12.2 changelog (#32424)
* docs: start 0.12.2 changelog

* docs: changelog for MinerU 4.x, Keep both, SCIM admin deletion, Tool Search call_tool and more fixes

* docs: changelog for MODEL_ID header, audit log model_id, Milvus TLS, Valkey tag and audit polling

* docs: move call_tool entry to Added

* docs: changelog for collection name checks, approved tool sources and sidebar hover previews
2026-10-15 00:46:23 +04:00
G30
5e2748a03e
fix: hovering a sidebar folder or chat always shows that item's preview (#32438) 2026-10-15 00:34:41 +04:00
Classic298
5fde0485a5
fix: an approved knowledge or file tool loses its sources (#32439)
With tool approval set to ask, a knowledge or file tool the user approved ran and answered, but no sources were saved on the reply or shown below it. The same call without approval listed them as usual. The sources of an approved call are now saved and shown the same way.

Fixes #32436
2026-10-15 00:28:23 +04:00
Classic298
30f3c49fb0
refac: normalise collection names when matching retrieval collections (#32435)
Retrieval now matches a collection name in a normalised form, folding letter case together and treating hyphens and underscores alike, so the same collection is identified consistently however its name is written.
2026-10-15 00:11:01 +04:00
Classic298
209b15b963
feat: keep socket.io long polling out of the audit log (#32425)
With websocket support turned off, the browser falls back to HTTP long polling and every poll was written to the audit log as its own entry, flooding it. The same traffic over a websocket was never audited, and AUDIT_EXCLUDED_PATHS only matches API routes, so there was no way to filter it out. Polling requests are now skipped as well, so the audit log looks the same whichever transport is in use.

Fixes #31871
2026-10-15 00:01:10 +04:00
Classic298
bae22752d3
feat: add {{MODEL_ID}} placeholder for custom connection headers (#32426)
Custom headers on connections and tool servers could pass the chat, message, user and task to downstream services, but not which model the request was for. Chat requests can now use {{MODEL_ID}}, which holds the ID of the model handling the request; for a workspace model that is the workspace model's own ID. In a multi-model chat each model's request carries its own ID, so downstream services can route by model or log usage per model.

Fixes #30006
2026-10-15 00:00:41 +04:00
Classic298
fb3d92a6ef
feat: record the requested model as its own field in the audit log (#32429)
The audit log only showed which model a request used inside the logged request body, which is cut off at MAX_BODY_LOG_SIZE, so the model went missing whenever a long prompt came before it. Audit entries for chat and completion requests, including the OpenAI, Ollama and Anthropic-compatible endpoints, now carry a model_id field with the model the client asked for, at every AUDIT_LOG_LEVEL and however long the request is. Other requests log it as null.

Fixes #30097
2026-10-15 00:00:19 +04:00
Classic298
980225e582
feat: tag Valkey vector store connections as Open WebUI (#32428)
On a shared Valkey or ElastiCache, Open WebUI's vector store connections identified themselves only as the generic GLIDE Python client, the same as every other app using that library, so operators could not tell its traffic apart in server-side logs. Both connections now report the library name as GlidePySync(open-webui). The tag needs valkey-glide-sync 2.5.2 or newer, so the pinned install version moves from 2.3.1 to 2.5.2, and an older manual install fails at startup until it is upgraded.

Fixes #31654
2026-10-15 00:00:08 +04:00
Classic298
3bc82bb2c1
feat: allow a custom TLS certificate for Milvus connections (#32427)
Open WebUI could not connect to a Milvus server that uses a self-signed or company-issued TLS certificate, because there was no way to tell it which certificate to trust. The new MILVUS_SERVER_PEM_PATH setting takes the path to that certificate file and uses it for the Milvus connection, in both normal and multi-tenancy mode. Leaving it unset keeps the current behaviour.

Fixes #31632
2026-10-14 23:59:57 +04:00
Timothy Jaeryang Baek
de446952c2 refac 2026-10-14 23:58:58 +04:00
Classic298
81f5b8adf8
feat: support MinerU 4.x self-hosted servers (#32422)
MinerU 4.0 dropped the parsing interface its self-hosted server had in 3.x, so the local MinerU engine failed with a 404 on every document when pointed at a 4.x server. Open WebUI now detects a 4.x server and talks to it through its new interface, while 3.x servers keep working as before. On 4.x, `tier` in the MinerU parameters picks the parsing quality (flash, basic, standard or advanced) and `enable_ocr` forces OCR; 3.x-only settings such as `language` and `model_version` are not sent, since 4.x refuses them. 4.x also returns every image as base64 text inside the document, which would otherwise be indexed as text, so images are left out of the extracted content.

Fixes #31516
2026-10-14 23:54:41 +04:00
Timothy Jaeryang Baek
40bf4a1b99 refac 2026-10-14 23:30:00 +04:00
Classic298
6276e81cec
fix: SCIM can delete admin accounts (#32415)
An identity provider could delete an admin account through SCIM, including the first admin account, for example when its sync pruned users it no longer had assigned. SCIM already ignores deactivation requests for admins so a sync cannot demote them, and the admin panel refuses to delete the first admin, but a SCIM delete request still went through and could leave the instance without anyone who has admin access. Deleting an admin through SCIM is now refused with a 403 and the account stays; admins are removed from the admin panel instead.

Fixes #27662
2026-10-14 23:25:28 +04:00
Timothy Jaeryang Baek
7b47c3b22c refac 2026-10-14 23:21:22 +04:00
Classic298
f35b199327
fix: voice calls and dictation go silent on Android Chrome after about ten uses (#32417)
Voice calls and dictation on Android Chrome stopped working after about ten uses in one session: calls hung on "Listening" and spoken replies went silent until the page was reloaded. Each use left the microphone level display holding on to an audio output, and Chrome on Android allows only ten of those per page. The level display now releases it when a turn ends and when a call or recording stops.

Fixes #29969
2026-10-14 23:19:06 +04:00
Classic298
77fd8aea61
fix: some file browser actions ignore the chat's own terminal workspace in Per chat mode (#32418)
With an orchestrator connection in Admin > Integrations > Open Terminal set to Terminal Contexts > Chat = "Per chat", several file browser actions ran in the shared terminal workspace, outside the chat's own one. Opening an HTML file showed "File not found", notebooks could not run, saving an edited file and New File wrote to the shared workspace so the change never showed up in the chat, and deleting several selected files or downloading a folder or a selection as a zip failed. All of these now use the chat's own workspace, like the rest of the file browser.

Fixes #29965
2026-10-14 23:18:56 +04:00
Classic298
8bddf9bc62
fix: memory reindex ignores the Embedding Concurrent Requests limit (#32420)
Reindexing memories (the admin "Reindex Knowledge and Memory Vectors" button, a user resetting their memory vectors, or the automatic reindex after switching to an embedding model with a different vector size) ignored the "Embedding Concurrent Requests" setting and sent one embedding request per memory at once. With a rate-limited embedding provider, most of those requests came back as 429 errors. Reindexing memories now respects that setting and the embedding batch size, like knowledge file uploads already do.

Fixes #32212
2026-10-14 23:15:25 +04:00
Classic298
44953df70e
Merge pull request #32421 from Classic298/channel-message-meta
refac: keep channel message metadata server-side
2026-10-14 23:15:17 +04:00
Timothy Jaeryang Baek
97b7ed73c8 refac 2026-10-14 23:09:31 +04:00
Timothy Jaeryang Baek
c0f56767f5 refac 2026-10-14 19:44:26 +04:00
Classic298
1f8af83b80
docs: 0.12.1 changelog (#32228)
* docs: start 0.12.1 changelog

* docs: changelog for MCP connection error logging and translation fixes

* docs: changelog for plain HTTP, Redis Sentinel and external citation fixes

* docs: update 0.12.1 date

* docs: changelog for external apps in channels, call wake lock and citation and tool fixes

* docs: changelog for automation schedule fix, shared chat calls and app connection errors

* docs: changelog for chat search speedup, VRM 0.x rest pose and translations

* docs: changelog for sidebar folder links and app profile pictures

* docs: changelog for new default follow-up prompt

* docs: changelog for follow-up generation and app connection status

* docs: add translation updates to 0.12.1 changelog

* docs: update 0.12.1 date, app replies and translations

* docs: changelog for multi-model message pairs and fixes from 2026-10-13

* docs: changelog for app message cards and link buttons

* docs: changelog for large skill previews

* docs: changelog for skill search tool, admin model toggles and Ask and Explain fix

* docs: changelog for code block results and moved calendar reminders

* docs: changelog for MCP OAuth behind Cloudflare

* docs: update 0.12.1 date

* docs: changelog for revision compare, channel muting, chat participants, folder previews and avatar controls

* docs: changelog for compare text in chat and model editor and typed channel mentions

* docs: changelog for .skill export and terminal file compare

* docs: changelog for Azure Realtime calls, voice chat titles, group webhooks and temporary chat files

* docs: changelog for analytics tokens, Realtime input parameters, SCIM sign in and more fixes
2026-10-14 19:40:27 +04:00
Timothy Jaeryang Baek
f5700886b1 refac 2026-10-14 19:03:16 +04:00
Timothy Jaeryang Baek
b1da0e8e84 chore: i18n 2026-10-14 18:52:42 +04:00