Commit graph

456 commits

Author SHA1 Message Date
DESKTOP-RTLN3BA\$punk
b5be9408f7 Merge commit '9576d1f01f' 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-05-05 01:44:39 -07:00
DESKTOP-RTLN3BA\$punk
6e1dd40597 feat: implement finalize checkout endpoint and update purchase success handling
- Added a new endpoint `/stripe/finalize-checkout` to synchronously fulfill a checkout session, addressing the webhook-vs-redirect race condition.
- Updated the `PurchaseSuccessPage` component to handle various states of the checkout process, including loading, completed, pending, and failed states.
- Introduced a new response model `FinalizeCheckoutResponse` to provide immediate feedback on the purchase status.
- Enhanced the Stripe API service to include the new finalize checkout functionality.
2026-05-05 01:01:12 -07:00
CREDO23
5119915f4f Merge upstream/dev into feature/multi-agent 2026-05-05 01:44:46 +02:00
CREDO23
6a9433c8ff Apply per-card decisions in HITL bundle resume. 2026-05-05 00:22:10 +02:00
CREDO23
0af2c28a8d Stabilize HITL bundle UX and resume. 2026-05-04 23:58:53 +02:00
DESKTOP-RTLN3BA\$punk
19b6e0a025 feat: moved chat persistance to Server Side 2026-05-04 03:06:15 -07:00
DESKTOP-RTLN3BA\$punk
c938d39277 feat: moved most things behind correct feature flag 2026-05-02 23:10:48 -07:00
DESKTOP-RTLN3BA\$punk
ae9d36d77f feat: unified credits and its cost calculations 2026-05-02 14:34:23 -07:00
Anish Sarkar
cd25175b84 chore: ran linting 2026-05-02 03:36:13 +05:30
Anish Sarkar
d14fed43c6 feat(documents): add endpoint to retrieve document by virtual path 2026-05-02 02:45:27 +05:30
DESKTOP-RTLN3BA\$punk
c644f02d05 chore: linting
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-30 18:42:38 -07:00
DESKTOP-RTLN3BA\$punk
7aeb8bb0a8 feat(markdown): enable citation rendering in MarkdownViewer and related components
- Added `enableCitations` prop to `MarkdownViewer` to support interactive citation badges.
- Updated instances of `MarkdownViewer` across various components to utilize the new citation feature.
- Enhanced citation processing in `PlateEditor` for read-only views, ensuring citations are rendered correctly without affecting markdown serialization.
- Refactored citation handling in `InlineCitation` and `MarkdownText` to improve citation context management.
2026-04-30 18:40:55 -07:00
Anish Sarkar
8b4f136668 refactor(chat): enhance UserMessage component with mention parsing and segment rendering for improved message display 2026-05-01 04:02:24 +05:30
Anish Sarkar
af66fbf106 refactor(chat): implement turn cancellation and status management in new chat routes for improved user experience and error handling 2026-05-01 01:47:52 +05:30
Anish Sarkar
d65a3fdf76 refactor(chat): implement new error handling utilities and streamline interrupt request processing in NewChatPage for improved performance and maintainability 2026-04-30 18:22:34 +05:30
Anish Sarkar
86f6b285ce refactor(chat): introduce new stream handling utilities and restructure event processing for improved performance and maintainability 2026-04-30 18:09:34 +05:30
Anish Sarkar
872065f90d Merge remote-tracking branch 'upstream/dev' into feat/split-auto-free-premium 2026-04-30 16:23:05 +05:30
Anish Sarkar
ba2a08b295 Merge remote-tracking branch 'upstream/dev' into feat/split-auto-free-premium 2026-04-30 15:45:11 +05:30
DESKTOP-RTLN3BA\$punk
e651c41372 feat: enhance tool input streaming and agent action handling for improved chat experience
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-30 03:13:58 -07:00
Anish Sarkar
f60e742fac feat(chat): implement pre-accept failure handling and unified retry messaging for chat operations, enhancing user experience and error management 2026-04-30 14:58:56 +05:30
Anish Sarkar
35ea0eae53 feat(chat): enhance error classification and handling for thread busy scenarios, improving user feedback and response management 2026-04-30 14:03:09 +05:30
Anish Sarkar
d64543686f feat(chat): unify error handling and logging for chat operations, enhancing clarity and consistency in error reporting 2026-04-30 11:56:41 +05:30
Anish Sarkar
901de33684 feat(chat): enhance error formatting to include optional error codes for better frontend handling 2026-04-29 21:05:21 +05:30
DESKTOP-RTLN3BA\$punk
c110f5b955 feat: improved agent streaming 2026-04-29 07:20:31 -07:00
Rohan Verma
cc6da08346
Merge pull request #1321 from guangyang1206/perf/lucide-explicit-icons-whitelist
perf(docs): replace full lucide barrel import with explicit icon whit…
2026-04-29 00:08:27 -07:00
Rohan Verma
95200e444f
Merge pull request #1319 from AnishSarkar22/fix/ui-mention-documents
fix: enhance mention documents
2026-04-29 00:07:05 -07:00
DESKTOP-RTLN3BA\$punk
f23be16b35 refactor: citation viewer 2026-04-28 23:25:26 -07:00
yeranyang
942077c773 perf(docs): replace full lucide barrel import with explicit icon whitelist
Fixes #1241

The docs bundle was importing `{ icons }` from lucide-react, which pulls
the entire Lucide icon library (~1 400 SVGs, ~500 kB of JS) into the Next.js
docs bundle even though only nine icons are used in docs frontmatter and
meta.json files.

Replace with a hand-maintained DOCS_ICONS whitelist that imports only the
icons that are actually referenced (BookOpen, ClipboardCheck, Compass,
Container, Download, FlaskConical, Heart, Unplug, Wrench).

To add a new docs icon: import it from lucide-react and add it to the
DOCS_ICONS record. The icon() callback remains the same for callers.
2026-04-29 12:34:13 +08:00
DESKTOP-RTLN3BA\$punk
b9a66cb417 feat: various UI fixes, prompt optimizations, and allowing duplicate docs
- Updated `content_hash` in the `Document` model to remove global uniqueness, allowing identical content across different paths.
- Enhanced `_create_document` function to handle path uniqueness and prevent session-poisoning from `IntegrityError`.
- Added detailed comments for clarity on the changes and their implications.
- Introduced new citation handling in the editor for improved user experience with citation jumps.
- Updated package dependencies in the frontend for better functionality.
2026-04-28 21:30:53 -07:00
Anish Sarkar
e61b410805 Merge remote-tracking branch 'upstream/dev' into fix/ui-mention-documents 2026-04-29 04:29:10 +05:30
Anish Sarkar
76c91adebc refactor(mentions): replace sidebarSelectedDocumentsAtom with mentionedDocumentsAtom and introduce getMentionDocKey utility for consistent document key generation 2026-04-29 04:12:42 +05:30
DESKTOP-RTLN3BA\$punk
e6433f78c4 Merge commit '61f4d05cd1' into dev_mod 2026-04-28 09:25:41 -07:00
DESKTOP-RTLN3BA\$punk
31a372bb84 feat: updated agent harness 2026-04-28 09:22:19 -07:00
CREDO23
2d962f6dd2 Merge upstream/dev 2026-04-27 22:44:40 +02:00
Rohan Verma
f607636ba6
Merge pull request #1286 from AnishSarkar22/feat/obsidian-plugin
feat: introduce Obsidian vault sync plugin
2026-04-27 13:34:33 -07:00
CREDO23
8b542ca3dd Deduplicate user-turn images by full base64 data and update desktop permissions copy for Screenshot Assist. 2026-04-27 19:25:39 +02:00
Anish Sarkar
27e16231c1 feat(filesystem): enhance agent filesystem API with searchSpaceId support for improved context handling 2026-04-27 21:00:40 +05:30
CREDO23
3f97b77ab6 Support multimodal chat with pending screen images on web 2026-04-24 19:17:43 +02:00
Anish Sarkar
9b1b9a90c0 Merge remote-tracking branch 'upstream/dev' into feat/obsidian-plugin 2026-04-24 21:34:55 +05:30
Rohan Verma
a0f2851784
Merge pull request #1299 from AnishSarkar22/feat/swappable-filesystem
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: introduce swappable filesystem on desktop & monaco editor to edit local files
2026-04-23 19:38:33 -07:00
Rohan Verma
f3c4daa592
Merge pull request #1298 from tmchow/osc/1245-dedupe-anon-upload
refactor(anon-chat): dedupe upload via anonymousChatApiService
2026-04-23 19:37:23 -07:00
Anish Sarkar
30b55a9baa feat(filesystem): refactor local filesystem handling to use mounts instead of root paths, enhancing mount management and path normalization 2026-04-24 05:59:21 +05:30
Anish Sarkar
3ee2683391 feat(filesystem): propagate localRootPaths across desktop and web API 2026-04-24 01:45:13 +05:30
Anish Sarkar
bbc1c76c0d feat(editor): integrate Monaco Editor for local file editing and enhance language inference 2026-04-23 18:00:51 +05:30
Anish Sarkar
864f6f798a feat(filesystem): enhance local file handling in editor and IPC integration 2026-04-23 17:23:38 +05:30
Trevin Chow
a2ddf47650 refactor(anon-chat): route upload through anonymousChatApiService
Fixes #1245. Deduplicate the anonymous-chat file upload request, which
was inlined verbatim in DocumentsSidebar.tsx and free-composer.tsx
while anonymousChatApiService.uploadDocument already existed.

Key change: service now returns a discriminated result instead of
throwing on 409. Callers need to distinguish 409 (quota exceeded, ->
gate to login) from other non-OK responses (real errors, -> throw).

  export type AnonUploadResult =
    | { ok: true; data: { filename: string; size_bytes: number } }
    | { ok: false; reason: "quota_exceeded" };

Both call sites now do:

  const result = await anonymousChatApiService.uploadDocument(file);
  if (!result.ok) {
    if (result.reason === "quota_exceeded") gate("upload more documents");
    return;
  }
  const data = result.data;

Dropped the BACKEND_URL import in both files (no longer used). Verified
zero remaining /api/v1/public/anon-chat/upload references in
surfsense_web/.
2026-04-23 03:26:42 -07:00
Anish Sarkar
4899588cd7 feat(web): connect new chat UI to agent filesystem APIs 2026-04-23 15:46:39 +05:30
CREDO23
16f47578d7 Enhance MCP tool trust functionality to support OAuth-backed connectors and improve error handling in the UI. Refactor API calls to use baseApiService for consistency. 2026-04-23 08:03:32 +02:00
Anish Sarkar
f06e00d77c Merge remote-tracking branch 'upstream/dev' into fix/docker-host-gateway 2026-04-21 11:24:34 +05:30
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