Daniel
4d92488f0c
fix: translated answers keep their source chips; the patient take home can be translated
...
Translation
- Stop scrubbing markdown before sending it to LibreTranslate. The scrub
deleted ordered-list numbering ("1. Give amoxicillin" -> "Give amoxicillin"),
flattened tables into ambiguous whitespace and ate underscores inside
identifiers. Raw markdown now goes to the translator unchanged.
- Render the translation through the same markdown pipeline as the original
bubble, with the message's own sources, so [n] markers come back as the usual
clickable .assistant-cite chips instead of escaped literal text. Headings,
lists and tables survive with them.
- When the translator drops citation markers, surface the affected sources in a
recovery block rather than letting the evidence disappear.
- Image cards are live nodes: they are now re-attached on every path out of a
translation (success, failure and Show original), so a failed translation no
longer silently removes a generating image from the message.
Patient take home
- Add a language selector to the take-home modal, reusing the existing
/translate endpoint and offering only what the local LibreTranslate reports.
- Copy, Export and Email carry what the caregiver is actually reading; the
original stays canonical behind "Original".
Conversation budget
- The admin field no longer prefills with the environment value, which turned
the next Save into an accidental override and made the documented "leave
empty to use the environment" path unreachable. The effective limit is shown
as a placeholder instead.
- Report source 'default' honestly instead of naming an unset env var.
- The load-failure notice now lands on the <p> instead of an <input>'s
textContent, where it rendered nothing.
- One validator for the budget everywhere: conversationLimit() replaces a
parseInt that accepted "120000abc".
Other
- /assistant is addressed by its URL, not by ped_last_tab, so "/" no longer
reopens the assistant; the URL follows tab changes and Back leaves it.
- Remove the dead DeepL path (it referenced an undefined DEEPL_BASES) and stop
offering admins a provider the server silently ignores.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01BkfrkQwA4YGrGw9LZSpeAq
2026-09-09 18:40:23 +02:00
Daniel
e22eb8dbdf
fix: mobile menu scrolls as one column like Open WebUI — the saved-chats card grows with content instead of clipping
Forgejo Android APK / Root app tests (push) Successful in 56s
Forgejo Android APK / Build signed APK (push) Successful in 2m5s
2026-09-09 17:55:57 +02:00
Daniel
d6ba2ce2a6
fix: mobile drawer scrolls with iOS momentum and overscroll containment for long chat lists
Forgejo Android APK / Root app tests (push) Successful in 48s
Forgejo Android APK / Build signed APK (push) Successful in 2m9s
2026-09-09 16:55:50 +02:00
Daniel
3676d2c105
fix: mobile drawer rows now truly fit the drawer width (align-items:stretch) and the options ⋮ stays visible
Forgejo Android APK / Root app tests (push) Successful in 56s
Forgejo Android APK / Build signed APK (push) Successful in 2m12s
2026-09-09 16:49:43 +02:00
Daniel
64f8cbc0f7
fix: mobile saved-chat titles smaller with clean ellipsis ending before the options button and more spacing between rows
2026-09-09 16:41:41 +02:00
Daniel
e1f1a58917
fix: Download transcript stays in the toolbar with its download icon (no empty round space); drawer keeps plain text Go back only
Forgejo Android APK / Root app tests (push) Successful in 46s
Forgejo Android APK / Build signed APK (push) Successful in 2m3s
2026-09-09 15:37:21 +02:00
Daniel
b9a70fd370
fix: shorter menu words on mobile so every row fits the drawer width (Download, compact 13px rows with ellipsis)
Forgejo Android APK / Root app tests (push) Successful in 57s
Forgejo Android APK / Build signed APK (push) Successful in 2m11s
2026-09-09 15:23:02 +02:00
Daniel
fe102d64b4
fix: mobile drawer is a plain text menu (no icons) — Go back and Download transcript rows; toolbar download hidden on mobile
2026-09-09 15:21:18 +02:00
Daniel
cbddc43bb6
fix: mobile Go back moves into the drawer menu; topbar keeps only the hamburger
2026-09-09 15:19:10 +02:00
Daniel
ff8c1132c1
feat: ChatGPT/OWUI mobile assistant — viewport-locked overlay with drawer (no disjoint scrolling), plain rows without chat icons, ⋮ options; desktop collapsible saved-chats rail
Forgejo Android APK / Root app tests (push) Successful in 49s
Forgejo Android APK / Build signed APK (push) Successful in 2m15s
2026-09-09 15:06:47 +02:00
Daniel
d74acfe31b
fix: title ellipsis keeps its end visible beside the options button
Forgejo Android APK / Root app tests (push) Successful in 1m0s
Forgejo Android APK / Build signed APK (push) Successful in 2m7s
2026-09-09 13:27:00 +02:00
Daniel
858ca47566
fix: keep chat icons in the mobile menu rows
Forgejo Android APK / Root app tests (push) Successful in 49s
Forgejo Android APK / Build signed APK (push) Successful in 2m8s
2026-09-09 13:23:07 +02:00
Daniel
3f7dddfd0b
fix: mobile drawer — no horizontal scrolling; options popover fits inside the width
2026-09-09 13:21:40 +02:00
Daniel
094de9ebd1
fix: mobile menu — no icons, hard-truncated titles within the drawer width, ⋮ always visible without horizontal scroll; translation uses the reliable plain-text path
Forgejo Android APK / Root app tests (push) Successful in 50s
Forgejo Android APK / Build signed APK (push) Successful in 2m11s
2026-09-09 12:29:37 +02:00
Daniel
3a55937177
fix: real FA icon on saved-chat rows (no more \\f086 leak); rows truncate to the drawer width on mobile
2026-09-09 05:02:19 +02:00
Daniel
609dbe70b1
feat: unboxed chat menu on desktop and mobile; flat OWUI-style mobile drawer; message scroll to the question; taller sources scroll
Forgejo Android APK / Root app tests (push) Successful in 48s
Forgejo Android APK / Build signed APK (push) Successful in 2m6s
2026-09-09 04:42:54 +02:00
Daniel
143030bf00
fix: usable mobile chat menu — left drawer with close X and backdrop, main-menu style rows, internal message scroll to the question, taller sources scroll; context metadata line removed from image cards
2026-09-09 04:39:20 +02:00
Daniel
2f7d929464
fix: translation 400 — translate raw markdown as text and re-render; download buttons on previews and library items; Done state on image completion; mic mirrors the working dictation flow; send→stop icon; grouped bottom-left tools
Forgejo Android APK / Root app tests (push) Successful in 46s
Forgejo Android APK / Build signed APK (push) Successful in 2m4s
2026-09-09 04:17:18 +02:00
Daniel
d6476f99d9
fix: send button morphs into a clickable STOP icon while working (no more disabled spinner); grouped bottom-left tools; silent-recording message; completed images auto-join the library; transient image-status retries
2026-09-09 04:12:30 +02:00
Daniel
fe63014a1f
feat: image generation everywhere — deterministic fallback when the model writes text, unbounded completion poll, No-chat default with description-only generation, context passed with every image job; stop-icon send button; attach/mic bottom-left composer; single-model selectors hidden; admin image allowlist from discovered models; PDF take-home export; new-chat confirm removed; sources same-height column with internal scroll
2026-09-09 04:04:00 +02:00
Daniel
ddc835b952
feat: visible Saved indicator under the composer — chats are autosaved, now you can see it
2026-09-09 03:15:21 +02:00
Daniel
e52fa86ad7
feat: send button morphs into a red stop while the assistant works (Open WebUI style); cancel-search button removed
2026-09-09 03:13:39 +02:00
Daniel
8a03fbb689
fix: voice — recorder codec chain with iOS mp4 fallback, audio-session unlock on voice gestures, unbounded image poll until completion
2026-09-09 03:11:43 +02:00
Daniel
73955dd5f9
feat: model selection in chat (composer pill + popup image model), deterministic image dispatch when the model writes text instead of calling the tool, markdown-rendered email, OWUI stacked composer, left mobile drawer, Go back in topbar, DeepL removed, image history inside the Create image popup
2026-09-09 02:55:28 +02:00
Daniel
7fdbcd51e6
feat: ChatGPT-style chat list — abbreviated rows with relative dates, pinned-first ordering, ⋮ menu (Rename/Pin/Export/Delete); clinical context always on; warn-only budget; mic live-transcript fallback; learning-hub page mode; composer autosize; include-context icon fix
2026-09-09 00:14:34 +02:00
Daniel
23788d63c5
feat: Open WebUI presentation — unboxed assistant messages, hairline OWUI tables without card containers
Forgejo Android APK / Root app tests (push) Successful in 54s
Forgejo Android APK / Build signed APK (push) Successful in 2m2s
2026-09-08 23:46:29 +02:00
Daniel
bb218750d9
feat: Create image tool at rail top (describe or pick a chat), Images gallery of past creations, ChatGPT-style composer icons (headset/mic/attach/send), example tap asks immediately
2026-09-08 23:40:53 +02:00
Daniel
68385c42f1
fix: iPhone keyboard handling — resizes-content viewport, in-flow pill composer on 100dvh, 16px input to stop auto-zoom
2026-09-08 23:30:35 +02:00
Daniel
01f97f7996
fix: hide conversation budget helper on mobile (ChatGPT-style quiet composer)
Forgejo Android APK / Root app tests (push) Successful in 55s
Forgejo Android APK / Build signed APK (push) Successful in 2m11s
2026-09-08 23:17:25 +02:00
Daniel
309d85ae86
feat: ChatGPT-style mobile UI — slim top bar with saved-chats drawer, plain example prompts, floating pill composer
2026-09-08 23:15:24 +02:00
Daniel
830a08b1ba
fix: mobile rail rules after media queries so the horizontal strip wins
Forgejo Android APK / Root app tests (push) Successful in 47s
Forgejo Android APK / Build signed APK (push) Successful in 2m5s
2026-09-08 22:56:35 +02:00
Daniel
ee0cc62500
fix: ChatGPT-style mobile layout — full-width chat, example questions visible, horizontal saved-chat chips, sources below
2026-09-08 22:55:28 +02:00
Daniel
cc9188fa08
fix: OWUI hover-delete on saved-chat rows (row click opens, trash icon deletes)
Forgejo Android APK / Root app tests (push) Successful in 56s
Forgejo Android APK / Build signed APK (push) Successful in 2m3s
2026-09-08 22:45:13 +02:00
Daniel
da86c7db79
fix: OWUI-style polish — fullscreen workspace replaces main menu, row-click saved chats (delete stays as hover), markdown-rendered patient handout, admin-only raw transcript, /api TTS URL, scrollable unclipped tables, action buttons hidden in exports, autosave-only copy
2026-09-08 22:41:08 +02:00
Daniel
09a4e02e39
feat: patient take home (copy/export/email), composer mic dictation, voice conversation mode, provider-aware translate languages
2026-09-08 20:01:46 +02:00
Daniel
8b072496e2
feat: Open WebUI-style assistant workspace — 3-column layout, markdown/math/code/tables, autosave with images, translation (LibreTranslate+DeepL), citation modal, Learning Hub moved in, handoff removed
2026-09-08 18:52:35 +02:00
Daniel
94210ac0a1
feat: attach images to clinical search with strict validation and multimodal routing
2026-09-08 15:53:05 +02:00
Daniel
b0bebe6970
fix: preserve saved clinical tables and per-turn citation targets
2026-09-07 05:58:12 +02:00
Daniel
cfaf8e957b
feat: ship reviewed prompt history, conversation limits and account protections
2026-09-07 04:01:01 +02:00