Memory extraction failing with OpenAI json_object format f59b77f1
Fix memory extraction from chat, which failed with a 400 from OpenAI since the switch to the Responses API
Select away digest appointments by what happened while away (ai-service#284)
Select away digest appointments by what happened while the user was away: open invitations, appointments created or changed by others, missed occurrences, plus the next two appointments as context
Take open invitations from the chronos needsAction request instead of the participation-status fallback, so birthdays and shared calendars no longer appear as unanswered invitations
Name the reason for each listed appointment in the digest, for a changed one also who changed it and their reply, and list up to 15 selected appointments in full
Show no Accept and Decline buttons on appointments the user does not attend in chat appointment lists
Fix conflict detection in search_appointments results
Restructure the documentation and add a feature catalog bf160dcf
Group the documentation sidebar into Getting started, Features, Configuration, Operations, and In depth and reference
Add a feature catalog with one page per feature, plus a landing page, an architecture overview and pages for App Suite integration, feature configuration and localization
Add in-browser full-text search
Split the MCP page into an operator setup page and an internals page documenting all 46 tools and the API key scopes, and correct the MCP ADRs where they disagreed with the code
Split Smart Search into a product page and a setup page; merge upgrade notes into one Upgrading page with a new 5.x section
Document missing Helm chart values and drop keys that no longer exist or have no effect
Fix the feature toggle defaults, the missing SUGGESTIONS error codes and the MCP migration runbook, which dropped the whole database
Rework the mobile compose chat into a fullscreen view that can be minimized. The previous mobile layout was unintuitive and gave no overview of the chat conversation.
Outbound egress proxy for the AI provider APIs cddd1511
Route calls to the OpenAI, LocalAI and Azure APIs through an optional HTTP forward proxy (aiEgressProxy.url), for clusters that only permit outbound traffic via a central proxy
Keep Qdrant, Middleware, OIDC and Grafana traffic direct; the proxy is scoped to the AI clients and does not read HTTP_PROXY / HTTPS_PROXY
Add aiEgressProxy.noProxy for hosts that stay direct, e.g. a cluster-internal LocalAI endpoint
Support proxy credentials via a rendered or pre-existing Secret so the url does not end up in the pod environment
Search files received as email attachments 2917a499
Add a mailAttachments option to search_files that targets the Drive "Attachments" view
Vacation notice tool for the chat assistant 737d9235
Add the set_vacation_notice tool so the assistant can create, update, activate or deactivate the out-of-office auto reply