Commit graph

1876 commits

Author SHA1 Message Date
Anish Sarkar
22f8cb2cd3 feat: enhance obsidian connector doc and add notes for migration from legacy obsidian connector 2026-04-22 00:24:26 +05:30
Anish Sarkar
99623a85d5 refactor: remove legacy Obsidian connector support 2026-04-22 00:10:24 +05:30
Anish Sarkar
7e4601fde4 feat: add enable_vision_llm flag to connector dialog state and query parameters 2026-04-21 11:25:05 +05:30
Anish Sarkar
f06e00d77c Merge remote-tracking branch 'upstream/dev' into fix/docker-host-gateway 2026-04-21 11:24:34 +05:30
Anish Sarkar
1f524660e1 fix: update server URL in README and settings for SurfSense plugin 2026-04-21 10:53:55 +05:30
Rohan Verma
1919150523
Merge pull request #1276 from MODSetter/dev_mod
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: add startup for desktop app
2026-04-20 21:27:14 -07:00
Rohan Verma
f2bb6dbd55
Merge pull request #1275 from Tacite243/fix/move-modelSelector-reset-effects-into-the-openTab-event-handlers-1252
refactor: move model selector reset logic to event handlers
2026-04-20 21:01:42 -07:00
Rohan Verma
df8a12217c
Merge pull request #1273 from Tacite243/perf/lazy-load-document-content-1242
perf: lazy-load DocumentTabContent to reduce initial dashboard bundle…
2026-04-20 21:00:59 -07:00
Rohan Verma
517c40f060
Merge pull request #1272 from mvanhorn/osc/1247-functional-setIsDark
fix(theme-toggle): use functional setIsDark in toggleTheme (#1247)
2026-04-20 20:59:04 -07:00
Rohan Verma
6bd4ffb98e
Merge pull request #1268 from aaron-seq/fix/move-open-reset-effects-to-onOpenChange
fix(dialogs): move open-reset effects into onOpenChange handlers
2026-04-20 20:58:27 -07:00
Anish Sarkar
2251e464c7 feat: enhance Obsidian plugin with new stats feature, improved error handling, and streamlined device management 2026-04-20 21:07:15 +05:30
Anish Sarkar
54e66e131a feat: remove plugin version references from Obsidian plugin routes, schemas, and UI components for cleaner integration 2026-04-20 19:49:58 +05:30
Anish Sarkar
87150a6d7f feat: enhance Obsidian plugin routes with for_update parameter for improved concurrency handling 2026-04-20 19:24:36 +05:30
Anish Sarkar
b5c9388c8a feat: refine Obsidian plugin routes and schemas for improved device management and API stability 2026-04-20 18:19:30 +05:30
Matt Van Horn
8cf957b301
fix(theme-toggle): use functional setIsDark in toggleTheme (#1247)
Closes #1247.

toggleTheme's previous implementation read isDark from the closure via
setIsDark(!isDark), which forced isDark into the useCallback dependency
array. As a result toggleTheme's reference changed on every click,
invalidating any downstream memoization.

Switched to the functional updater setIsDark((prev) => !prev) and
dropped isDark from the dependency list. The sibling setCrazyLightTheme
and setCrazyDarkTheme callbacks already use this pattern (they pass
concrete values to setIsDark without listing isDark in deps), so this
keeps the three theme callbacks consistent.

No observable behavior change — clicking the theme toggle still flips
isDark. The callback reference is now stable between clicks, which is
also safer under concurrent updates per React's standard guidance.
2026-04-20 01:58:20 -07:00
Anish Sarkar
60d9e7ed8c feat: introduce SurfSense plugin for Obsidian with syncing capabilities and enhanced settings management 2026-04-20 04:04:19 +05:30
Anish Sarkar
ee2fb79e75 feat: update Obsidian connector to support plugin-based syncing and improve UI components 2026-04-20 04:03:45 +05:30
Tacite243
be2e011375 perf: lazy-load DocumentTabContent to reduce initial dashboard bundle size 2026-04-19 14:50:55 +02:00
Tacite243
8fba46893f refactor: move model selector reset logic to event handlers 2026-04-19 14:06:18 +02:00
Aaron Sequeira
2d4adcea64 fix(dialogs): move open-reset effects into onOpenChange handlers 2026-04-19 16:09:34 +05:30
Matt Van Horn
c2e52fbb48
refactor(documents-sidebar): convert discarded isExportingKB state to ref
Closes #1250
2026-04-18 23:15:31 -07:00
DESKTOP-RTLN3BA\$punk
ba87d3d9e0 Merge commit '2b2453e015' into dev_mod 2026-04-18 15:03:53 -07:00
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
2b2453e015
Merge pull request #1240 from AnishSarkar22/feat/resume-builder
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
feat: resume builder
2026-04-17 13:41:32 -07:00
Anish Sarkar
0fa32c3a10 chore: ran linting 2026-04-17 16:45:14 +05:30
Matt Van Horn
dbd1706811
fix(new-chat): remove unused _hasScrolledToCited state in source-detail-panel
The useState was declared but its value was never read in render
(only the setter was called). Each setter call scheduled a re-render
that changed nothing visible.

The actual scroll/highlight behavior is driven by hasScrolledRef
and setActiveChunkIndex; this state was effectively dead.

Closes #1249
2026-04-17 02:00:29 -04:00
Anish Sarkar
aef4c90107 refactor: update UI components for improved layout in assistant message, public chat footer, and report panel 2026-04-17 09:03:34 +05:30
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
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
Anish Sarkar
abf758997a feat: optimize PDF viewer performance with improved page rendering and visibility management 2026-04-16 23:44:15 +05:30
Anish Sarkar
706d5b9821 feat: enhance PDF viewer and report panel with public access handling and UI updates 2026-04-16 22:53:17 +05:30
Anish Sarkar
e2cd0557a5 feat: add public report PDF preview endpoint and update report content handling for Typst-based resumes 2026-04-16 22:51:36 +05:30
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
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
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
Anish Sarkar
6037058a09 refactor: enhance PDF thumbnail loading and error handling in resume component, introducing skeleton loader and improved state management 2026-04-16 11:45:33 +05:30
Anish Sarkar
df88fcd0fb refactor: streamline PDF handling in viewer and resume components by replacing react-pdf with pdfjs-dist, enhancing loading states and error management 2026-04-16 11:23:13 +05:30
Anish Sarkar
d5a1f4ac01 fix: improve user information requirements and template handling in resume generation tool 2026-04-16 10:29:13 +05:30
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
Anish Sarkar
2f58b14440 fix: enhance error handling and loading states in report panel and resume generation components 2026-04-15 23:08:19 +05:30
Anish Sarkar
4d577a20a9 refactor: update PDF viewer and report card components for improved accessibility and UI consistency 2026-04-15 21:56:18 +05:30
Anish Sarkar
45752a7e73 feat: add GenerateResumeToolUI component for managing resume generation states and display 2026-04-15 21:43:00 +05:30
Anish Sarkar
06c344d66e feat: implement PDF viewer for resume previews and integrate with report panel 2026-04-15 21:42:50 +05:30
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