Commit graph

19512 commits

Author SHA1 Message Date
Timothy Jaeryang Baek
597b00a547 refac 2026-10-16 03:17:14 +04:00
G30
9cc648cad8
fix: a built-in tool a model turns back on stays on (#32504)
When Admin Settings > Models > Model Defaults turns a built-in tool off,
a model that turns it back on lost that choice on Save. The editor seeds
the model's builtinTools with the admin defaults object itself, and
setBuiltinTool deleted the tool's key in place, so the admin defaults
changed too. The empty map was then dropped on save, and the backend
filled in the admin default again.

Update a copy of the map in setBuiltinTool, as the Default Features
toggles in Capabilities.svelte already build a new list, and keep the
empty map when the admin default is not empty, so the model's choice is
stored and overrides it.
2026-10-16 03:14:30 +04:00
G30
ad3e5a6c42
fix: a chat you clone or fork from someone's share is yours to regenerate in (#32508)
Since cloned and forked chats keep each message's original author, a
copy of someone else's shared chat kept the sharer as the author of
every prompt and reply. Regenerate and Continue in the copy then failed
with "You can only regenerate your own messages.", and edits to those
messages were dropped on save, although the copy belongs to the person
who made it.

When a shared chat is cloned, or forked by someone other than its owner,
give the source owner's messages to the new owner, the same per-message
loop shared_chat_response uses to set authors. Messages written by other
participants of an Allow replies chat keep their authors.
2026-10-16 03:13:44 +04:00
Timothy Jaeryang Baek
ba0b2169e1 refac 2026-10-16 03:13:13 +04:00
G30
e979a1f9e2
fix: saving Settings > Interface no longer turns the admin's default font into your own (#32497)
The Interface tab's Save sent fontFamily and imageCompressionSize every
time, read from the settings store, which already carries the admin's
Default Interface Settings for anything the user has not set. One Save
with nothing changed therefore stored the admin's default as a personal
value: the row switched from "Default" to "Custom", and a later change
to the admin default never reached that account.

Leave a value out of that Save while the user only inherits it, as
isDefaultSetting already decides for the "Default" label. Values the
user set keep saving as before.
2026-10-16 03:02:58 +04:00
G30
7da8653e71
fix: read aloud no longer stops after the first sentence when speech is slow (#32484)
speak() synthesizes one sentence at a time and enqueues each clip as it
arrives. When a clip finishes before the next one is ready, the audio queue
reports 'empty-queue', and the onStopped handler set speaking to false. The
loop only enqueues while speaking is true, so every later clip was
synthesized and then dropped, and the speaker button went back to idle.

Ignore 'empty-queue' while the synthesis loop is still running; playback
resumes on the next enqueue, and the queue's 'empty-queue' after the last
clip still ends playback as before.
2026-10-16 03:02:28 +04:00
Classic298
ae6793dd4f
fix: OAuth token refresh ignores the client_secret_basic auth method (#32507)
When Open WebUI authenticates to the OAuth provider with client_secret_basic, either because OAUTH_TOKEN_ENDPOINT_AUTH_METHOD is set to it or because an MCP tool server's OAuth provider only offers that method, sign-in sent the client ID and secret in an HTTP Basic header but the token refresh always put them in the request body. Providers that only accept Basic rejected every refresh with invalid_client, so once the access token expired Open WebUI deleted the user's saved OAuth tokens, and model connections and tool servers set to forward the user's OAuth token stopped working until the user signed in again. The refresh now authenticates the same way sign-in does for client_secret_basic, with the credentials only in the Basic header. Setups using client_secret_post, or leaving the setting unset, still send the credentials in the request body exactly as before.

Fixes #32506
2026-10-16 03:01:35 +04:00
Classic298
ec39df7da5
fix: inline HTML preview in a reply shows "File not found" on a Per chat terminal (#32485)
With an Open Terminal orchestrator connection set to Terminal Contexts > Chat = "Per chat" (Admin > Integrations > Open Terminal), the preview of an HTML file shown inside an assistant reply looked for the file in the shared terminal workspace, so it showed "File not found" even though the file sits in the chat's own workspace. The sidebar file browser already opens the same file correctly since #32418. The preview inside the reply now uses the chat's own workspace as well.

Fixes #32477
2026-10-16 03:00:56 +04:00
G30
0696bfdf27
fix: a reply started in one channel thread no longer carries over to the next thread (#32490)
On a wide window the thread side panel keeps one Thread instance while
you open another thread, and initHandler reset the messages and typing
state for the new thread but not replyToMessage. The "Replying to"
banner stayed, and sending saved the new thread's message quoting a
message from the previous thread.

Clear replyToMessage in initHandler, as #31376 does for switching
channels.
2026-10-16 03:00:42 +04:00
Classic298
8172291838
fix: OAuth MCP tool is not enabled after login when the model has default tools (#32488)
Enabling an OAuth MCP tool from the Integrations menu sends the user through the OAuth login and back to a new chat, where the tool should be on. When the selected model had tools of its own enabled by default, the tool came back switched off, so it had to be enabled a second time. Now it stays on, together with the model's own tools. For the same reason, a link like `/?tools=my_tool` opened with such a model ignored the listed tools, and now turns them on.

Fixes #32476
2026-10-16 03:00:34 +04:00
Classic298
1bc5648a7b
fix: page scrolls up and the header goes off screen when previewing a scanned PDF (#32487)
Opening a PDF without any text, such as a scan, in the knowledge base file viewer scrolled the whole page up. The workspace tabs, the knowledge base header and the viewer toolbar went off screen and a blank block appeared at the bottom. Scanned PDFs now open with the page in place, the same as PDFs with text.

Fixes #32481
2026-10-16 03:00:24 +04:00
Wei-Lun Li
a89b05f6f9
i18n: complete zh-TW translation and replace Mainland terms (#32482)
* i18n: improve zh-TW terms and fill missing settings strings

Replace Mainland Chinese terms with Taiwan usage (創建 -> 建立, 菜單 -> 選單,
加載 -> 載入, 用戶 -> 使用者, 文檔 -> 文件) and translate the untranslated
Apps, tool search and realtime audio settings strings.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* i18n: translate remaining zh-TW strings

Fill the 283 untranslated zh-TW strings, following the terms already used
in the file (工作區, 函式, 技能, 知識庫, 終端, 權限範圍, 目前使用版本,
虛擬形象, Token 數) and common Taiwan software terms (資訊清單 for
manifest, 提交訊息 for commit message, 並排/內嵌 for diff layouts).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-16 02:59:16 +04:00
Timothy Jaeryang Baek
1a1a81d8e0 refac 2026-10-16 02:57:52 +04:00
Timothy Jaeryang Baek
ef28e99e58 refac 2026-10-16 02:53:00 +04:00
Timothy Jaeryang Baek
96fe78b408 refac 2026-10-16 02:49:31 +04:00
Timothy Jaeryang Baek
b4db56ae96 refac 2026-10-16 02:46:20 +04:00
Timothy Jaeryang Baek
6768f52aca refac 2026-10-16 02:15:09 +04:00
Timothy Jaeryang Baek
2a6e0da057 refac 2026-10-16 02:06:02 +04:00
Timothy Jaeryang Baek
c13de6395f refac 2026-10-16 01:55:24 +04:00
Timothy Jaeryang Baek
8e9519240f refac 2026-10-16 01:55:10 +04:00
Timothy Jaeryang Baek
f50e66941c refac 2026-10-16 01:50:05 +04:00
Timothy Jaeryang Baek
05b038560a refac 2026-10-16 01:47:20 +04:00
Timothy Jaeryang Baek
8191ac30dd refac 2026-10-16 01:43:50 +04:00
Timothy Jaeryang Baek
1895f5ffb9 refac 2026-10-16 01:38:22 +04:00
Timothy Jaeryang Baek
4dedaaf6e2 refac 2026-10-16 01:36:10 +04:00
Timothy Jaeryang Baek
4a70253bc8 refac 2026-10-16 01:25:30 +04:00
Timothy Jaeryang Baek
f4557ca06b refac 2026-10-16 01:22:00 +04:00
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