Commit graph

19682 commits

Author SHA1 Message Date
Timothy Jaeryang Baek
cbd06d2aad refac 2026-10-21 09:36:52 +09:00
Timothy Jaeryang Baek
d5cd7f4907 refac 2026-10-21 09:26:26 +09:00
Timothy Jaeryang Baek
6acbfa7fee refac 2026-10-21 09:23:03 +09:00
Timothy Jaeryang Baek
7708ee851a refac 2026-10-21 09:19:18 +09:00
Timothy Jaeryang Baek
b4a58be193 refac 2026-10-21 09:15:15 +09:00
Timothy Jaeryang Baek
1184d36c13 refac 2026-10-21 08:56:52 +09:00
Timothy Jaeryang Baek
5a46aad0f0 refac 2026-10-21 08:56:28 +09:00
Timothy Jaeryang Baek
b5046f9d86 refac 2026-10-21 08:47:17 +09:00
Timothy Jaeryang Baek
ba34b1c47c refac 2026-10-21 08:41:25 +09:00
Classic298
56eca192ab
feat: context compaction now runs on chats with few messages that are over the threshold (#32794)
Context compaction summarizes older messages and keeps the most recent ones verbatim, splitting the chat at a user message. It skipped the chat whenever the first follow-up message sat too close to the end to keep the share set in the Retained Messages admin setting. So a fresh chat with one question and one reply carrying a lot of tool output never compacted: the follow-up failed with a context length error, and regenerating or editing that follow-up failed the same way. Now compaction splits at the first follow-up message in that case, keeping fewer messages than Retained Messages asks for, so the chat keeps working. Chats where a split already met that share compact as before, and compaction between tool calls is unchanged.

Fixes #32781
2026-10-21 08:35:13 +09:00
Timothy Jaeryang Baek
6dbd375c26 refac 2026-10-21 08:34:45 +09:00
Timothy Jaeryang Baek
72cc79b8f3 refac 2026-10-21 08:33:40 +09:00
Timothy Jaeryang Baek
02974f41e9 refac 2026-10-21 08:32:08 +09:00
Timothy Jaeryang Baek
5f6399eb6b refac 2026-10-21 08:23:20 +09:00
G30
f36490bf2f
fix: tooltips show on keyboard focus and Escape hides them (#32644) 2026-10-21 07:51:21 +09:00
Classic298
c4153a6eea
fix: shared chat pages keep reloading and jump back to the bottom (#32725)
Since 0.12.3, any chat opened under /s/, whether through a share link or by an admin viewing another user's chat, was fetched again and again from the moment it opened, and each fetch scrolled the page to the bottom. Scrolling up was impossible and older messages never loaded. The chat is now loaded once when the page opens.

Fixes #32657
2026-10-21 06:53:38 +09:00
Classic298
2bebbb44e1
fix: extra space before italic, bold and linked text in chat messages (#32743)
Since 0.12.3, chat messages show a stray space at the start of every paragraph and inside every italic, bold, struck-through or linked span, so an em dash followed by italic text renders with a visible gap. The edit view has no such space; it only appears in the displayed message. The stray space is gone and formatted text sits flush against its neighbours again.

Fixes #32739
2026-10-21 04:46:35 +09:00
Classic298
217766ed0f
fix: MCP list results from FastMCP servers reach the model twice (#32726)
When a tool on a server built with the standalone FastMCP package returned a list, the model got the list twice, once as plain text and once as structured data, so every list result cost two to three times the tokens. That package sends the whole list as a single piece of text, a format Open WebUI did not recognise as a duplicate. The list now reaches the model once, and structured data that the text does not already contain is still passed along.

Fixes #32719
2026-10-21 04:46:02 +09:00
Classic298
cd74e6d126
fix: dropped realtime call sometimes shows "Voice connection failed" (#32730)
When the voice provider ended a realtime call, the overlay sometimes said "Voice connection failed" instead of "Voice provider connection closed". It happened when microphone audio reached the server at the same moment the provider hung up, so forwarding that audio failed and the generic error was shown. Anything that fails to reach the provider because it just closed the connection now reports that the provider closed the call.

Fixes #32729
2026-10-21 04:45:54 +09:00
Timothy Jaeryang Baek
6c61227d90 refac 2026-10-21 03:44:42 +09:00
Classic298
2d9852c604
fix: function input dialog answer is lost when a script event arrives while it is open (#32744)
When a function asked the user for input or confirmation and an execute event (a script sent to the browser) arrived in the same tab before they answered, clicking Confirm or Cancel closed the dialog but the answer never reached the function, which then waited until it timed out. Now the answer always goes back to the function that opened the dialog.

Fixes #32742
2026-10-21 03:33:59 +09:00
Classic298
794e57cf7e
fix: misleading ask_user error when questions are not sent as a list (#32727)
When a model sent the ask_user questions as anything other than a list, for example a JSON-encoded string, the tool answered "ask_user requires 1-3 questions." The model had sent the right number of questions, so it did not understand the error and often repeated the same call in a loop. It now gets a separate error saying the questions must be an array of question objects, and the count error only appears when the count is actually wrong.

Fixes #32662
2026-10-21 03:33:10 +09:00
G30
1d0b782719
fix: picking a prompt from / in a channel inserts the prompt text (#32713) 2026-10-21 03:26:24 +09:00
G30
46cdd70d7b
fix: a pipe model's Valves button follows the Allow Chat Valves permission (#32772) 2026-10-21 03:23:16 +09:00
Classic298
2355b8a369
fix: requests hang or fail with 503 after pages are closed while loading (#32617)
Closing a page while the server was still sending it data (a file's processing status, a chat export) could interrupt a database read halfway. On SQLite the connection used for it was then never given back, and a later unrelated request could hang forever when that connection was finally cleaned up; once enough were lost, every request needing the database waited 30 seconds and failed with a 503. The connection is now kept and rolled back instead of being thrown away inside the interrupted request, and the session is closed once instead of twice, as either alone still lost connections. Closing 600 chat exports and 300 file status streams mid-load on SQLite used to lose 60 (the whole pool in that test) and 56 connections, now none; Postgres lost none before or after.

Fixes #32609
2026-10-21 03:23:05 +09:00
G30
9cbd27011b
fix: renaming a chat to only spaces keeps its title instead of saving it blank (#32770) 2026-10-21 03:21:52 +09:00
G30
97f5c4e973
fix: Archive All Chats takes chats out of their folders, so deleting a folder no longer deletes them (#32647) 2026-10-21 03:18:03 +09:00
Classic298
c7e159bdd6
fix: voice calls do not forward user info headers to the realtime provider (#32733)
With ENABLE_FORWARD_USER_INFO_HEADERS turned on, voice calls in Realtime mode connected to the configured realtime provider without any user info headers, so a gateway in front of the provider could not tell which user was on the call. The call connection now sends the same user headers (or the signed user JWT, when configured) as chat requests and realtime text-to-speech already do.
2026-10-21 03:13:37 +09:00
Classic298
7345c6c31e
fix: npm run build fails on Windows since 0.12.3 (#32735)
Since 0.12.3 every frontend build first verifies the prebuilt encryption module, and on Windows that check failed before the build started, because it mishandled Windows paths and Git's default Windows line endings changed the source files it hashes. The check now gives the same result on Windows, Linux and macOS, including in existing Windows clones, so npm run build works on Windows again. The stored source fingerprint changes because the check script is one of the files it covers. Past the check, the build ran out of memory under Node's default limit, so it now runs with a 12 GB limit, the same value the Docker CI build uses.

Fixes #32656
2026-10-21 03:13:16 +09:00
G30
0b6a7cca9a
i18n: fill missing Azerbaijani (az-AZ) translations (#32562) 2026-10-21 03:12:35 +09:00
G30
ff96b02b16
fix: the chat title is the page's level-1 heading for screen readers (#32636) 2026-10-21 03:11:14 +09:00
Timothy Jaeryang Baek
208dc81912 refac 2026-10-21 03:09:37 +09:00
G30
dda976463b
fix: starting dictation from the keyboard moves focus to the recording bar (#32630) 2026-10-21 03:08:41 +09:00
G30
3b638ecb2b
fix: the sidebar logo link is announced as New Chat by screen readers (#32623) 2026-10-21 03:07:12 +09:00
G30
636b631ab7
fix: the microphone stays on after leaving a chat mid-dictation (#32640) 2026-10-21 03:06:39 +09:00
G30
70fb5462ea
fix: Compress Images in Channels left at its default compresses channel images (#32693) 2026-10-21 03:01:27 +09:00
G30
f77a89cccb
fix: screen readers announce call mode's Listening and Thinking status (#32625) 2026-10-21 03:00:57 +09:00
G30
ecce83f13c
i18n: fill missing Indonesian (id-ID) translations (#32561) 2026-10-21 03:00:00 +09:00
G30
2e2d330d9f
fix: the search window's content type button tells screen readers what's selected (#32632) 2026-10-21 02:58:57 +09:00
G30
a06fed0ad8
fix: screen readers announce notifications such as copy confirmations (#32634) 2026-10-21 02:57:00 +09:00
G30
c9936e81ec
fix: Archived Chats hides Export when the Allow Chat Export permission is off (#32684) 2026-10-21 02:55:00 +09:00
G30
fdb304be2f
fix: a stop sequence with a % sign no longer stops every message from sending (#32649) 2026-10-21 02:52:14 +09:00
G30
07dffea1ef
fix: menu buttons tell screen readers that they open a menu and whether it's open (#32642) 2026-10-21 02:51:01 +09:00
G30
54fc21d685
fix: deleting a channel message also deletes its thread replies (#32666) 2026-10-21 02:44:43 +09:00
G30
5d75c1905b
fix: a new chat starts with one model when the Multiple Models permission is off (#32668) 2026-10-21 02:44:35 +09:00
G30
fc2ef33f16
i18n: fill missing Tamil (ta-IN) translations (#32560) 2026-10-21 02:44:06 +09:00
G30
a5ccff86d8
i18n: fill missing Filipino (Tagalog) (fil-PH) translations (#32559) 2026-10-21 02:43:53 +09:00
G30
ec55c92ec4
i18n: fill missing Russian (ru-RU) translations (#32558) 2026-10-21 02:43:43 +09:00
Classic298
93ba628f3a
fix: generated images never show up after the user answers the model's question or approves a tool (#32680)
When the model asked the user a question, or a tool call was approved or rejected, the reply was saved in a way that broke adding anything to it later in the same turn. If the model then generated an image, the image was created but never shown, the tool returned "unsupported operand type(s) for +: 'NoneType' and 'list'" and the model kept retrying, generating more hidden images. Progress status updates for that reply were also silently dropped. Both now work after a question or tool approval.

Fixes #32678
2026-10-21 02:39:39 +09:00
G30
8ed8aa59e8
i18n: fill missing Korean (ko-KR) translations (#32563) 2026-10-21 02:36:40 +09:00