Commit Graph

100 Commits

Author SHA1 Message Date
cogwheel0
8d6c7f5411 feat(auth): Add OAuth providers and improve authentication flow 2025-12-11 18:45:18 +05:30
cogwheel0
ea61168184 feat(auth): Add LDAP and SSO authentication support 2025-12-11 17:43:44 +05:30
cogwheel0
da63e3cbff feat(attachments): Optimize file ID extraction and image conversion 2025-12-10 19:40:38 +05:30
cogwheel0
649a708a68 feat(models): Add safe parsing for boolean and integer values 2025-12-07 09:54:27 +05:30
cogwheel0
df2a921ffd feat(notes): Add notes feature with editor page and drawer integration 2025-12-06 19:44:34 +05:30
cogwheel0
4e105270b8 feat(folders): Preserve feature state on server-side errors 2025-12-06 10:16:44 +05:30
cogwheel0
d7c36f3e0d feat(chat): add parent message ID for proper message linking 2025-12-06 09:33:30 +05:30
cogwheel0
c630ce8c27 feat(models): Add filters support and auto-validation for model-specific filters 2025-12-05 22:19:31 +05:30
cogwheel0
f10ef6d7c1 feat(api): Optimize chat fetching with parallel pagination 2025-11-28 13:49:21 +05:30
cogwheel0
e61f53b69f feat(api): Implement pagination for conversation summaries retrieval 2025-11-28 13:08:35 +05:30
cogwheel0
61a3fcc83a feat(streaming): Simplify streaming logic and remove persistent tracking 2025-11-27 14:36:13 +05:30
cogwheel0
75ba0dc01d feat(chat): Add context attachment and knowledge base support 2025-11-26 22:19:19 +05:30
cogwheel0
44d1cc99b4 feat(server): Improve server health checks and authentication flow 2025-11-26 19:09:57 +05:30
cogwheel0
a138300fec feat(api): improve model parsing with robust error handling 2025-11-24 17:52:18 +05:30
cogwheel0
4df22422c2 feat(conversations): Improve conversation and folder fetching with concurrent requests 2025-11-20 22:42:31 +05:30
cogwheel0
45135d9185 fix(auth): Improve auth error handling without token clearing 2025-11-12 13:23:58 +05:30
cogwheel0
5727c055a2 Revert "fix(streaming): refactor to not force session id"
This reverts commit 8cc7a23477.
2025-11-06 20:09:18 +05:30
cogwheel0
715849aff3 feat(tts): add speech rate support for text-to-speech generation 2025-11-03 00:44:24 +05:30
cogwheel0
86339715b1 feat(sts): add server side speech-to-text 2025-11-02 19:03:36 +05:30
cogwheel0
8cc7a23477 fix(streaming): refactor to not force session id 2025-11-01 22:41:38 +05:30
cogwheel0
877b403914 refactor(api): Improve data parsing with normalized list handling 2025-11-01 15:29:54 +05:30
cogwheel0
fe09583c6b feat(api): Improve file and prompt parsing with type safety 2025-11-01 15:21:34 +05:30
cogwheel0
42ef62d565 feat(api): Improve file and knowledge base data parsing with normalization 2025-11-01 15:15:38 +05:30
cogwheel0
073e0cf458 feat(folders): Improve folder management and parsing logic 2025-11-01 15:04:50 +05:30
cogwheel0
a005c14a67 feat(api): Optimize conversation parsing with worker-based decoding 2025-11-01 14:54:08 +05:30
cogwheel0
a374c744ef refactor(api): Migrate conversation parsing to worker-based approach 2025-11-01 01:46:46 +05:30
cogwheel0
5d33e5fe65 fix: server side tts on ios 2025-10-31 23:20:04 +05:30
cogwheel0
a00d64fc26 feat(transport): Improve socket transport mode selection and localization 2025-10-30 22:32:59 +05:30
cogwheel0
44149d5f81 feat(tts): add server default voice retrieval and integrate it into 2025-10-30 16:10:20 +05:30
cogwheel0
7fb199b2e4 feat: implement service failure handling in background streaming
- Added a method to send failure notifications to Flutter when the background service fails to enter the foreground.
- Implemented a broadcast receiver to handle service failure notifications and notify Flutter about the failure.
- Enhanced the persistent streaming service to attempt recovery for failed streams.
- Introduced heartbeat monitoring for SSE streams to detect stale connections and trigger recovery actions.
2025-10-28 13:59:17 +05:30
cogwheel0
5ab3b9c4e0 feat(api): pass userSettings respect function_calling preference in 2025-10-26 23:00:01 +05:30
cogwheel0
ae48fcc035 feat(sse): add SSEStreamParser to parse Dio SSE streams and extract 2025-10-26 22:33:53 +05:30
cogwheel0
2b44e38a2e feat(i18n/socket): add WebSocket error messages and show connect errors 2025-10-25 14:24:49 +05:30
cogwheel0
1cb8926e21 feat(chat): regenerate variants and support
Hide archived assistant variants in the linear chat view and track
previous assistant as versions so regenerated responses do not
duplicate or lose history. When regenerating, mark the previous assistant
message with an archivedVariant flag for the UI and keep it in server
history. Add a ChatMessageVersion model and a versions field to
ChatMessage to store prior generated variants. Implement
archiveLastAssistantAsVersion in chat providers to snapshot the last
assistant message into versions and reset the message for a fresh
streamed generation. Finalize flow updates to attach an adjacent archived
assistant as a version when needed so the UI can present a switcher
between current and past variants. These changes prevent duplicate
messages, preserve previous responses, and enable variant switching.
2025-10-23 22:29:28 +05:30
cogwheel0
561e7dd616 feat(tts): server-backed TTS engine selection
Introduce server TTS support and engine selection while keeping
device TTS as the default.

- Add new persistence keys for storing TTS engine and selected
  server voice (ttsEngine, ttsServerVoiceId, ttsServerVoiceName).
- Extend TextToSpeechService to support two engines:
  TtsEngine.device (FlutterTts) and TtsEngine.server (remote audio).
- Wire in an AudioPlayer and optional ApiService to fetch raw
  audio bytes from the server and play them, with event hooks
  mapped to existing lifecycle callbacks.
- Implement fallback to device TTS on server errors or empty
  responses, and ensure player lifecycle (pause/stop/dispose)
  is handled when using server engine.
- Allow engine and preferred voice to be configured before
  initialization and updated at runtime via updateSettings.

This enables selecting a server-side voice and using a remote
TTS provider while preserving compatibility with the existing
device TTS implementation.
2025-10-23 16:31:15 +05:30
cogwheel0
a2ae48f85f chore: update Fastlane configuration and clean up API service
- Updated the Deliverfile to submit for review and skip metadata and screenshots.
- Removed outdated build lane from Fastfile.
- Refactored API service to eliminate fallback to latest assistant message, addressing duplication issues in multi-turn conversations.
2025-10-16 23:51:18 +05:30
cogwheel0
762155500b feat: Improve offline detection logic
This commit refactors the connectivity service to be more robust and less prone to UI flicker.

Key changes:
- Any successful API response now briefly suppresses the offline warning. This prevents the UI from flashing an offline message between regular connectivity checks.
- The threshold for showing the offline warning is increased from 2 to 3 consecutive failed health checks.
- The timeout for health checks is increased to better handle slow networks.
- The offline warning is now suppressed if there are active data streams to avoid interrupting the user.
- A custom JSON converter is added for conversation metadata to handle potential type mismatches from local storage.
2025-10-16 11:34:28 +05:30
cogwheel0
7a8bd54dba refactor: remove self-signed certificate manager and streamline certificate handling
- Deleted the SelfSignedCertificateManager and its associated files to simplify the certificate management process.
- Updated ApiService and ConnectivityService to include self-signed certificate configuration directly, enhancing clarity and maintainability.
- Adjusted comments to reflect the new approach to handling self-signed certificates, ensuring better understanding of security considerations.
- Improved the application startup sequence by deferring unnecessary initializations, contributing to a more efficient first paint performance.
2025-10-11 13:16:31 +05:30
cogwheel0
259fe3f9f0 feat: implement self-signed certificate support in API and UI
- Added support for self-signed TLS certificates in the ApiService, allowing configuration based on server settings.
- Introduced a toggle in the ServerConnectionPage to enable or disable trusting self-signed certificates.
- Updated localization files to include new strings for self-signed certificate settings in multiple languages.
- Enhanced the OptimizedStorageService to manage trusted servers based on user preferences for self-signed certificates.
- Improved error handling and logging throughout the affected services to ensure clarity and maintainability.
2025-10-09 01:49:56 +05:30
cogwheel0
7552031751 refactor: add file sanitization for WebUI in ApiService
- Introduced a new private method `_sanitizeFilesForWebUI` to clean up file data before sending it to the WebUI.
- Updated message handling to utilize the sanitized file data, ensuring that only non-null entries are included in the messages sent.
- Enhanced the logic for handling attachment IDs and files in the message structure, improving data integrity and consistency.
2025-10-01 17:24:23 +05:30
cogwheel0
0ff48eeb38 fix: sources count 2025-09-28 15:15:35 +05:30
cogwheel0
b8856679da feat: show sources 2025-09-28 14:59:29 +05:30
cogwheel0
ae20035900 fix: number of sites count 2025-09-28 14:25:35 +05:30
cogwheel0
75b744d061 fix: status history parsing 2025-09-28 14:17:27 +05:30
cogwheel0
0d5fcabea8 fix: streaming issues 2025-09-27 16:34:37 +05:30
cogwheel0
3c959c83bf refactor: use background only flows 2025-09-26 13:59:28 +05:30
cogwheel0
5f03610f35 fix: streaming 2025-09-26 01:38:00 +05:30
cogwheel0
3124bccfeb refactor: more logs 2025-09-25 23:22:48 +05:30
cogwheel0
9210b2155a refactor: all logging 2025-09-25 22:36:42 +05:30
cogwheel0
db0261ffed refactor: titles 2025-09-25 21:15:47 +05:30