Commit graph

4931 commits

Author SHA1 Message Date
DESKTOP-RTLN3BA\$punk
b440610e04 feat: implement analytics tracking for desktop app events
- Added event tracking for desktop app activation and quitting.
- Introduced analytics bridge in preload script to handle user identification and event capturing.
- Updated IPC channels to support analytics-related actions.
- Enhanced analytics functionality in the main process to track user interactions and application updates.
- Integrated analytics tracking for folder watching and deep link handling.
- Improved connector setup tracking in the web application.

This commit enhances the overall analytics capabilities of the application, ensuring better user behavior insights and event tracking across both desktop and web environments.
2026-04-18 14:35:14 -07:00
Rohan Verma
b38a297349
Merge pull request #1254 from MODSetter/dev
Some checks failed
Build and Push Docker Images / tag_release (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Has been cancelled
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Has been cancelled
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Has been cancelled
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Has been cancelled
chore: added missed changelogs
2026-04-16 22:24:57 -07:00
DESKTOP-RTLN3BA\$punk
425e1b8830 Merge commit 'ba2a2fd529' into dev 2026-04-16 22:21:42 -07:00
Rohan Verma
acab2358b3
Merge pull request #1253 from MODSetter/dev_mod
chore: added missed changelogs
2026-04-16 22:17:36 -07:00
DESKTOP-RTLN3BA\$punk
b613b4f9cd chore: added missed changelogs 2026-04-16 22:14:44 -07:00
DESKTOP-RTLN3BA\$punk
aacf38fd5f feat: fix anonymous chat message history
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
2026-04-16 16:18:21 -07:00
Rohan Verma
c3b9d419ba
Merge pull request #1238 from xr843/ux/form-max-length
feat: add maxLength constraints to auth and settings form inputs
2026-04-16 15:51:43 -07:00
Rohan Verma
69ded37151
Merge pull request #1237 from xr843/a11y/nested-main-landmark
fix(a11y): remove nested <main> landmarks under (home) layout
2026-04-16 15:50:13 -07:00
Rohan Verma
cae137e7f8
Merge pull request #1233 from mvanhorn/osc/1092-clear-scroll-timers
fix: clear scroll-to-citation timers on panel close/unmount
2026-04-16 15:49:33 -07:00
xianren
b8e663e8f4 feat: add maxLength constraints to auth and settings form inputs
Gives users immediate client-side feedback and prevents pathologically
long values from being typed. Caps match Zod schema limits where they
exist; email uses the RFC 5321 maximum.

Files touched (5):
- (home)/login/LocalLoginForm.tsx — email → 254
- (home)/register/page.tsx — email → 254
- dashboard/.../user-settings/.../ProfileContent.tsx — display name → 100
- components/settings/general-settings-manager.tsx — search space name → 100
- components/settings/roles-manager.tsx — role name (create+edit dialogs) → 100,
  role description (create+edit dialogs) → 500

Closes #948
2026-04-16 22:33:01 +08:00
xianren
3f85f2a56b fix(a11y): remove nested <main> landmarks under (home) layout
The (home)/layout.tsx already wraps children in <main>. Having another
<main> inside each child page produces nested landmarks, which is
invalid HTML and confuses screen readers.

Changed the outermost wrapper from <main> → <div> in:
- surfsense_web/app/(home)/page.tsx (homepage)
- surfsense_web/app/(home)/free/page.tsx (free AI chat landing)

Other (home) descendants (login/register/privacy/terms/changelog/
announcements/blog/contact/free/[model_slug]) were already using <div>.

Closes #1191
2026-04-16 22:30:55 +08:00
Rohan Verma
ba2a2fd529
Merge pull request #1236 from MODSetter/dev
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
feat: update anonymous chat cookie settings for cross-site compatibility
2026-04-16 02:39:27 -07:00
DESKTOP-RTLN3BA\$punk
4e68565a72 Merge commit '7d6c7c4623' into dev
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
2026-04-16 02:38:14 -07:00
DESKTOP-RTLN3BA\$punk
afae2c5f69 feat: update anonymous chat cookie settings for cross-site compatibility
- Implemented dynamic SameSite and Secure cookie settings based on the backend URL context.
- Enhanced cookie handling to ensure proper functionality in cross-domain scenarios.
2026-04-16 02:36:36 -07:00
Rohan Verma
7d6c7c4623
Merge pull request #1235 from MODSetter/dev
try: ip fix for cloudflare
2026-04-16 02:19:29 -07:00
DESKTOP-RTLN3BA\$punk
2cb30c604d try: ip fix for cludflare
- Introduced AI File Sorting functionality to automatically organize documents into a smart folder hierarchy based on source, date, and topic.
- Updated README.md to include the new feature.
- Enhanced homepage components with new illustrations and descriptions for AI File Sorting.
- Refactored rate limiting logic to extract real client IPs more accurately.
2026-04-16 02:13:52 -07:00
Rohan Verma
99995c67b2
Merge pull request #1234 from MODSetter/dev
feat: release 0.0.16
2026-04-16 01:36:25 -07:00
DESKTOP-RTLN3BA\$punk
635bf8ba96 fix: update LlamaCloud test assertions to reflect new parse modes
- Changed assertions in `test_llamacloud_basic_uses_cost_effective_tier` to check for `parse_page_with_llm` instead of `cost_effective` tier.
- Updated `test_llamacloud_premium_uses_agentic_plus_tier` to verify `parse_page_with_agent` instead of `agentic_plus` tier.
- Ensured that `tier` is no longer included in the call arguments.
2026-04-16 01:32:42 -07:00
DESKTOP-RTLN3BA\$punk
e7fba022c1 chore: bumped version to 0.0.16 2026-04-16 01:18:03 -07:00
DESKTOP-RTLN3BA\$punk
0e4285095c fix: llamaclud v2 impl 2026-04-16 01:15:47 -07:00
DESKTOP-RTLN3BA\$punk
2f793e7a69 refactor: improve content extraction and encoding handling
- Enhanced Azure Document Intelligence parser to raise an error for empty or whitespace-only content.
- Updated LLMRouterService to log premium model strings more clearly.
- Added automatic encoding detection for file reading in document processors.
- Improved error handling for empty markdown content extraction in file processors.
- Refactored DocumentUploadTab component for better accessibility and user interaction.
2026-04-16 00:25:46 -07:00
DESKTOP-RTLN3BA\$punk
4a51ccdc2c cloud: added openrouter integration with global configs 2026-04-15 23:46:29 -07:00
Matt Van Horn
008c464660
fix: clear scroll-to-citation timers on panel close/unmount
Store setTimeout IDs in a ref and clear them when the source detail
panel closes or unmounts, preventing state updates on unmounted
components.

Fixes #1092
2026-04-15 22:00:56 -04:00
DESKTOP-RTLN3BA\$punk
ff4e0f9b62 feat: no login experience and prem tokens
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
2026-04-15 17:02:00 -07:00
Rohan Verma
87452bb315
Merge pull request #1232 from xr843/fix/clear-announcement-toast-stagger-timers
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
fix(web): clear announcement stagger timers on unmount
2026-04-15 10:47:43 -07:00
Rohan Verma
5bbb7b98cc
Merge pull request #1230 from xr843/fix/memoize-zero-provider-opts
fix(web): memoize Zero provider opts to prevent reconnect churn
2026-04-15 10:46:57 -07:00
Rohan Verma
5b8fdff6b6
Merge pull request #1229 from xr843/fix/remove-react-dom-server
fix(web): drop react-dom/server from inline-mention-editor bundle
2026-04-15 10:46:19 -07:00
Rohan Verma
97984e1e13
Merge pull request #1228 from tmchow/osc/1190-extract-type-icons
refactor: extract duplicate TYPE_ICONS constant into shared module
2026-04-15 10:45:36 -07:00
Tim Ren
c03a1e177a fix(web): clear announcement stagger timers on unmount
The cleanup for the announcement-toast effect only cleared the outer
1500ms timer, leaving the per-announcement stagger timers (i * 800ms)
untracked. If the root layout unmounts during the stagger window, those
timers fire after cleanup and attempt to toast against a dead tree.

Track the inner timer ids in an array and clear them alongside the outer
timer in the effect cleanup.

Fixes #1094.
2026-04-15 20:07:20 +08:00
Tim Ren
68e6acd504 fix(web): memoize Zero provider opts to prevent reconnect churn
Wrap the opts object and derived context in useMemo so ZeroReactProvider
receives stable references across parent re-renders. Before this change
opts was rebuilt on every render of ZeroProvider, which can cause the
Rocicorp Zero client to churn its internal state / reconnect if it
compares props by reference.

Fixes #1097.
2026-04-15 20:07:12 +08:00
Tim Ren
2727aebcc6 fix(web): drop react-dom/server from inline-mention-editor bundle
Replace ReactDOMServer.renderToString with a tiny createRoot + flushSync
helper so react-dom/server is no longer pulled into the client bundle on
every chat page load. react-dom is already in the bundle (React itself
uses it), so this adds zero new runtime weight.

Fixes #1189.
2026-04-15 20:01:16 +08:00
Trevin Chow
95130d894c refactor: extract shared TYPE_ICONS into dedicated module
Move the duplicated TYPE_ICONS record from citation.tsx and
citation-list.tsx into a new type-icons.ts module so the mapping lives
in one place and both components import from the same source.

Resolves #1190
2026-04-14 23:22:29 -07:00
DESKTOP-RTLN3BA\$punk
656e061f84 feat: add processing mode support for document uploads and ETL pipeline, improded error handling ux
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
- Introduced a `ProcessingMode` enum to differentiate between basic and premium processing modes.
- Updated `EtlRequest` to include a `processing_mode` field, defaulting to basic.
- Enhanced ETL pipeline services to utilize the selected processing mode for Azure Document Intelligence and LlamaCloud parsing.
- Modified various routes and services to handle processing mode, affecting document upload and indexing tasks.
- Improved error handling and logging to include processing mode details.
- Added tests to validate processing mode functionality and its impact on ETL operations.
2026-04-14 21:26:00 -07:00
Rohan Verma
b659f41bab
Merge pull request #1225 from oscarzhou511/feat/obsidian-connector-visibility
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
feat: improve Obsidian connector visibility and desktop sync flow
2026-04-14 13:10:57 -07:00
Rohan Verma
ae0df70880
Merge pull request #1224 from AnishSarkar22/feat/token-calculation
feat: track and display per-message LLM token usage & UI/UX changes
2026-04-14 13:10:05 -07:00
Anish Sarkar
9fc0976d5e chore: ran linting 2026-04-14 21:52:26 +05:30
Anish Sarkar
a74ed014cc refactor: update UI components for better accessibility and styling consistency 2026-04-14 21:50:34 +05:30
Anish Sarkar
2021f6c4b7 refactor: simplify AI sort button implementation and improve styling 2026-04-14 21:39:11 +05:30
Anish Sarkar
1714922830 refactor: improve password input layout and enhance chat thread title update logic 2026-04-14 21:13:01 +05:30
Anish Sarkar
f01ddf3f0a feat: implement token usage recording in chat routes and enhance title generation handling 2026-04-14 20:56:07 +05:30
Anish Sarkar
292fcb1a2c feat: enhance model selector UI abd added github models icon 2026-04-14 20:35:16 +05:30
Anish Sarkar
8fd7664f8f Merge remote-tracking branch 'upstream/dev' into feat/token-calculation 2026-04-14 15:49:39 +05:30
Anish Sarkar
1f9840d4a4 feat: update alembic migration number 2026-04-14 15:49:33 +05:30
Anish Sarkar
833799457b feat: integrate new LLM configuration handling and enhance model display in message info dropdown 2026-04-14 15:35:04 +05:30
Anish Sarkar
f21bdc0668 feat: enhance LLM response handling and token usage tracking in chat services and UI components 2026-04-14 15:29:02 +05:30
Oscar Zhou
204dac2c3a feat: improve Obsidian connector visibility and desktop sync flow 2026-04-14 19:07:14 +09:30
Anish Sarkar
5510c1de03 feat: integrate token usage context and enhance message info display in chat UI 2026-04-14 14:47:59 +05:30
Anish Sarkar
5af6005163 feat: improve token usage tracking and response handling in chat routes and services 2026-04-14 14:28:31 +05:30
Rohan Verma
91c2c06108
Merge pull request #1222 from oscarzhou511/perf/issue-1089-image-sizes
Some checks are pending
Build and Push Docker Images / tag_release (push) Waiting to run
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_backend, ./surfsense_backend/Dockerfile, backend, surfsense-backend, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-24.04-arm, linux/arm64, arm64) (push) Blocked by required conditions
Build and Push Docker Images / build (./surfsense_web, ./surfsense_web/Dockerfile, web, surfsense-web, ubuntu-latest, linux/amd64, amd64) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (backend, surfsense-backend) (push) Blocked by required conditions
Build and Push Docker Images / create_manifest (web, surfsense-web) (push) Blocked by required conditions
perf: optimize next/image sizes with dynamic maxWidth (#1089)
2026-04-14 01:51:50 -07:00
Rohan Verma
888e1d9cec
Merge pull request #1221 from oscarzhou511/refactor/issue-1194-move-utils
refactor: move pure utility functions out of UI components (#1194)
2026-04-14 01:51:16 -07:00