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
9bbcf0049a
feat: instruct the assistant to call the generate_image tool for image requests
2026-09-08 17:41:06 +02:00
Daniel
6c9ac58ce3
chore: log image parts attached to provider requests
Forgejo Android APK / Root app tests (push) Successful in 22s
Forgejo Android APK / Build signed APK (push) Successful in 2m17s
2026-09-08 16:45:07 +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
2dbb446a9c
feat: env-driven clinical search tool name with hard stop and deprecation warning
Forgejo Android APK / Root app tests (push) Successful in 24s
Forgejo Android APK / Build signed APK (push) Successful in 1m53s
2026-09-07 19:40:41 +02:00
Daniel
13fca7887d
feat: unify Admin model/prompt UI — single prompt dropdown, two image-model dropdowns, searchable/scrollable users, remove classification/custom-add, consistent font, concise labels
2026-09-07 18:18:48 +02:00
Daniel
6be2d1375a
feat: integrate durable image jobs/private assets into current core
2026-09-07 16:53:42 +02:00
Daniel
3a8dbbcce3
fix: keep the sidebar generated image session-only, never stored in saved chats
Forgejo Android APK / Root app tests (push) Successful in 26s
Forgejo Android APK / Build signed APK (push) Successful in 4m4s
2026-09-07 16:23:55 +02:00
Daniel
6f63b8f538
feat: image prompt adds full-content detail and bans citations/reference numbers
Forgejo Android APK / Root app tests (push) Successful in 34s
Forgejo Android APK / Build signed APK (push) Successful in 2m23s
2026-09-07 16:13:09 +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
Daniel
54d49dd28a
Forbid LaTeX escaped clinical citations
Forgejo Android APK / Build signed APK (push) Successful in 1m55s
2026-09-01 19:29:40 +02:00
Daniel
c1ba6fa798
Close MCP sessions when they are replaced
...
Forgejo Android APK / Build signed APK (push) Successful in 1m48s
The MCP server builds a Nextcloud client per session and closes it only
when the session ends. The clinical assistant replaced its cached session
every time the ten-minute TTL lapsed but never ended the old one, so each
abandoned client held its Nextcloud connections open. The production MCP
container was holding 708 sockets in CLOSE-WAIT against a 1024 descriptor
ceiling, roughly 300 from the point where every clinical search fails.
Expired and server-rejected sessions are now deleted. Session reuse is
unchanged: a live session is still shared across calls, since closing one
still in use would force a re-initialize on every search.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-28 23:45:26 +02:00
Daniel
604f6abb49
Remove clinical assistant source lock
Forgejo Android APK / Build signed APK (push) Successful in 1m54s
2026-08-27 21:33:58 +02:00
Daniel
018913a845
Lock clinical assistant retrieval to configured source
Forgejo Android APK / Build signed APK (push) Successful in 1m46s
2026-08-27 21:30:29 +02:00
Daniel
2c02e6eca7
Send reasoning options only to supported model
Forgejo Android APK / Build signed APK (push) Successful in 1m53s
2026-08-27 21:25:38 +02:00
Daniel
e710b1c7bd
Configure clinical assistant reasoning profile
Forgejo Android APK / Build signed APK (push) Successful in 1m58s
2026-08-27 20:47:59 +02:00
Daniel
524ad40d49
Match TTS voices to the selected LiteLLM model
...
Voice lists were a single flat set from LITELLM_TTS_VOICES, so picking a
model could leave an incompatible voice selected and the request would
fail at the gateway. Voices are now resolved per model family (Kokoro,
Kitten, Supertonic, Groq Orpheus EN/AR), with a compatibility check that
falls back through user → admin → env → first valid voice. Groq Orpheus
requests also pin response_format to wav.
Also refreshes the cardiac/respiratory auscultation samples, extends the
well-visit component, and fixes the Android launch theme background
(@null → colorPrimary) so the splash does not flash through.
NOTE: this is in-progress work that was already sitting uncommitted in
the working tree; it is committed here as-is so the tree was clean for
the release bump.
2026-07-30 17:34:34 +02:00
Daniel
b0e1f4969a
feat: improve clinical assistant prompts
Forgejo Android APK / Build signed APK (push) Successful in 2m15s
2026-06-06 00:01:07 +02:00
Daniel
d02b9e2771
Fix clinical prompt pool fallback seeding
Forgejo Android APK / Build signed APK (push) Successful in 2m14s
2026-05-22 16:53:53 +02:00
Daniel
cb63729656
Expand clinical prompt pool taxonomy
Forgejo Android APK / Build signed APK (push) Waiting to run
2026-05-22 05:56:08 +02:00
Daniel
97ddd87449
fix mobile assistant table streaming
Forgejo Android APK / Build signed APK (push) Has been cancelled
2026-05-11 16:15:45 +02:00
Daniel
83d9a77160
fix table source citation links
2026-05-09 20:50:54 +02:00
Daniel
baf0020981
prefer file names for clinical sources
2026-05-09 20:10:24 +02:00
Daniel
795ad9ffae
harden clinical assistant source handling
2026-05-09 19:59:04 +02:00
Daniel
8d69fe57a5
fix litellm metadata discovery auth
2026-05-09 15:15:47 +02:00
Daniel
1b3ea569b7
simplify speech and embeddings through litellm
2026-05-09 05:09:02 +02:00
Daniel
79037fa775
fix litellm tts search fallbacks
2026-05-09 04:50:55 +02:00
Daniel
2a3631d067
fix litellm metadata model discovery
2026-05-09 04:46:06 +02:00
Daniel
2387e6f136
fix litellm speech model discovery
2026-05-09 04:12:57 +02:00
Daniel
6f5782734f
fix stt local model defaults
2026-05-09 01:57:37 +02:00
Daniel
416fff624a
feat: add patient education handouts
2026-05-08 22:26:53 +02:00
Daniel
1cbe248450
feat: add extension import preview
2026-05-08 22:26:53 +02:00
Daniel
4a9a518134
add extension transfer workflow
2026-05-08 20:48:58 +02:00
Daniel
ba180d7dde
fix metrics route normalization
2026-05-08 20:22:14 +02:00
Daniel
210ec06fe5
remove vendor model references
2026-05-08 19:14:51 +02:00
Daniel
a6807ef7a4
add hardening and metrics tests
2026-05-08 19:08:29 +02:00
Daniel
a08524d95f
harden logging and observability
2026-05-08 19:08:19 +02:00
Daniel
300b40b181
set clinical prompt pool target
2026-05-08 08:52:29 +02:00
Daniel
9167532a14
use indexed assistant prompt examples
2026-05-08 08:44:34 +02:00
Daniel
ffffe17b30
tighten chart review source coverage
2026-05-08 07:10:00 +02:00
Daniel
d48a19a891
honor admin default model selections
2026-05-08 06:49:50 +02:00
Daniel
548c39a883
normalize LiteLLM embedding requests
2026-05-08 06:11:36 +02:00
Daniel
48ee92fc5d
extract STT provider handling
2026-05-08 06:05:39 +02:00
Daniel
d4a3c8fd60
simplify TTS provider handling
2026-05-08 06:00:33 +02:00
Daniel
7c700ed7f5
refactor clinical assistant backend utilities
2026-05-08 00:55:58 +02:00
Daniel
10f39fc4ff
restore assistant streaming
2026-05-08 00:26:10 +02:00
Daniel
a8f364f177
stabilize assistant and add diagrams
2026-05-08 00:23:00 +02:00
Daniel
569363754f
fix assistant stream truncation handling
2026-05-07 23:02:26 +02:00