Commit graph

1273 commits

Author SHA1 Message Date
CREDO23
cd7ebd60d0 add google drive create/trash agent tools 2026-02-20 19:21:24 +02:00
CREDO23
ed98af188c add Markdown dependency 2026-02-20 16:25:30 +02:00
CREDO23
f1fac7dedc add create_file and trash_file to GoogleDriveClient 2026-02-20 16:25:25 +02:00
CREDO23
2220314041 add google drive tool metadata service 2026-02-20 16:05:54 +02:00
Rohan Verma
f15833fec6
Merge pull request #826 from AnishSarkar22/fix/report-artifact
fix: improve report artifact & enhance revision handling
2026-02-19 19:10:21 -08:00
Rohan Verma
9aef655566
Merge pull request #825 from CREDO23/sur-169-feat-implement-human-in-the-loop-for-linear-sensitive
[Feat] Add human in the loop for linear sensitive actions
2026-02-19 19:09:50 -08:00
Rohan Verma
bad114734a
Merge pull request #821 from AnishSarkar22/fix/ui
feat: introduce platejs and remove blocknote editor
2026-02-19 19:09:35 -08:00
Anish Sarkar
3dfc908270 fix: update length constraint in report generation to specify ~400 words for brief reports 2026-02-19 23:34:17 +05:30
Anish Sarkar
e568ded743 feat: enhance report generation with length constraints and user-friendly language guidelines 2026-02-19 23:33:08 +05:30
CREDO23
c8413ee2bf fix: resolve graphql complexity, json extraction, kb sync, and ui prefill for linear HIL 2026-02-19 18:30:20 +02:00
CREDO23
d4e2ebb99f fix(hitl): rollback on KB delete failure, tighten linear tool guards
- delete_linear_issue + delete_notion_page: add db_session.rollback()
  in the KB document deletion exception handler so the session is never
  left in a PendingRollbackError state after a failed commit, which
  would otherwise break all subsequent DB operations in the same request
- delete_linear_issue: include issue identifier (e.g. ENG-42) in the
  success message so the caller can confirm which issue was archived
- update_linear_issue: remove redundant label_ids ternary
  (x if x is not None else None -> x)
- create_linear_issue: add logger.error on empty-title guard for parity
  with the equivalent Notion tool
2026-02-19 16:27:02 +02:00
CREDO23
ca624385a6 fix(linear): align KB sync messaging and fix log terminology
- update_issue: handle not_indexed KB sync status with a distinct user
  message (matches Notion parity)
- delete_issue: fix log message "not found in DB" → "not found in KB"
2026-02-19 16:08:51 +02:00
Anish Sarkar
e059ee4193 chore: ran linting 2026-02-19 19:34:25 +05:30
Anish Sarkar
4afdfb580d feat: enhance chat streaming by incorporating recent report context for improved LLM decision-making 2026-02-19 19:28:03 +05:30
CREDO23
2f9768b371 fix: register Linear tools in TOOLS_WITH_UI and make GraphQL calls async
- Add create_linear_issue, update_linear_issue, delete_linear_issue to
  TOOLS_WITH_UI so the HIL approval cards are correctly dispatched to
  the Linear tool-ui components (without this the interrupt cards were
  never rendered)
- Replace blocking requests.post with httpx.AsyncClient in
  LinearConnector.execute_graphql_query to avoid stalling the asyncio
  event loop during live streaming; remove now-unused requests import
2026-02-19 15:53:59 +02:00
CREDO23
9b838ec015 fix(linear): use .astext for JSONB text extraction in _resolve_issue
cast(document_metadata["key"], String) generates CAST(col->'key' AS TEXT)
which preserves JSON string quotes (e.g. '"Fix login bug"'), causing
case-insensitive comparisons to never match.

Replace with .astext which generates the ->> operator (unquoted text
extraction), making issue lookups by title and identifier work correctly.
2026-02-19 15:47:40 +02:00
CREDO23
090b69cf1e fix: guard empty update_issue call and unify delete_from_kb naming
- LinearConnector.update_issue: return error early when no fields are
  provided, preventing a silent no-op mutation and unnecessary KB sync
- Rename delete_from_db → delete_from_kb in delete_notion_page tool and
  its frontend component to match the more accurate Linear naming and
  keep both tool APIs consistent for the LLM
2026-02-19 15:22:36 +02:00
Anish Sarkar
8ae37bdccf refactor: improve Markdown fence handling in report generation and viewer 2026-02-19 18:32:50 +05:30
CREDO23
e79ec9234a fix label clear bug, invalid delete URL, and remove dead connector method 2026-02-19 14:35:30 +02:00
Anish Sarkar
f7bbce098b fix: remove duplicate footers in report generation and ensure single standard disclaimer is appended 2026-02-19 17:26:28 +05:30
Anish Sarkar
b426653dfb feat: add standard report footer to generated reports 2026-02-19 15:35:21 +05:30
Anish Sarkar
69dfe943b7 refactor: enhance report generation tool with improved source strategies and revision handling 2026-02-19 15:33:32 +05:30
Anish Sarkar
f3ec48fb00 feat: enhance chat event streaming by tracking active tool depth to prevent inner-tool LLM token leakage 2026-02-19 13:11:18 +05:30
CREDO23
c5bd930a71 add create-linear-issue tool UI and multi-account creation context 2026-02-18 20:01:05 +02:00
CREDO23
5bb619227e fix linear connector methods to return status dicts 2026-02-18 19:13:14 +02:00
CREDO23
f0e1f3419e fix(notion): remove parent_page_id from create_notion_page tool signature 2026-02-18 19:02:16 +02:00
CREDO23
1d6c1a2287 feat(linear): disable linear tools when no connector, handle in streaming 2026-02-18 18:49:03 +02:00
CREDO23
c201a0602a feat(linear): register linear tools in registry 2026-02-18 18:46:45 +02:00
CREDO23
e618deaefc feat(linear): add tools __init__ 2026-02-18 18:41:43 +02:00
CREDO23
94ae9989de feat(linear): add delete_linear_issue tool 2026-02-18 18:41:09 +02:00
CREDO23
72df61da6e feat(linear): add update_linear_issue tool 2026-02-18 18:28:47 +02:00
CREDO23
46bdb64476 feat(linear): add create_linear_issue tool 2026-02-18 18:12:23 +02:00
CREDO23
58955cdc9f feat(linear): add LinearKBSyncService and services __init__ 2026-02-18 17:51:53 +02:00
CREDO23
3fd80a61f9 feat(linear): add LinearToolMetadataService 2026-02-18 17:34:52 +02:00
CREDO23
50868f32d4 feat: add Linear write mutations to LinearConnector 2026-02-18 16:53:21 +02:00
CREDO23
594379ea69 Disable streaming for KB sync summary LLM to prevent token leaking into chat; remove workspace_icon from update-notion-page 2026-02-18 15:10:51 +02:00
CREDO23
d28aed14b3 Guard KB sync on document_id; fix comment style 2026-02-18 12:31:28 +02:00
CREDO23
64a170efce Fix critical bugs in KB sync implementation
- Add rollback on exception to prevent dirty database state
- Fix block verification threshold from >=1 to >=80%
- Remove technical 'failed' language from user messages
- Add empty content validation with warning
2026-02-17 21:27:58 +02:00
CREDO23
7d1bd1fab4 Implement KB sync after Notion page updates with block ID verification
- Add NotionKBSyncService for immediate KB updates after page changes
- Implement block ID verification to ensure content freshness
- Refactor duplicate block processing logic to shared utils
- Add user-friendly status messages
- Include debug logging for troubleshooting
2026-02-17 20:30:12 +02:00
CREDO23
2f65536c6d use document_id instead of page_id for kb sync lookup 2026-02-17 18:25:56 +02:00
CREDO23
bd3bd701a7 fix jsonb query syntax for page_id lookup 2026-02-17 18:02:00 +02:00
CREDO23
f5195b4c2f fix import path for generate_content_hash 2026-02-17 17:50:47 +02:00
CREDO23
e92aa68523 fix circular import in kb sync service 2026-02-17 17:48:24 +02:00
CREDO23
b240bc3e1a add kb sync for notion updates 2026-02-17 17:37:47 +02:00
DESKTOP-RTLN3BA\$punk
7bd3a4e08f chore: linting 2026-02-16 23:30:35 -08:00
Anish Sarkar
09c5f5bd0d refactor: update _render_block function to use a parameter for numbered list counter, improving state management 2026-02-17 12:59:47 +05:30
DESKTOP-RTLN3BA\$punk
786b65d68f feat: update default rate limits in SlowAPI limiter
- Increased the default rate limits from 180/minute to 1024/minute for enhanced API performance and protection against abuse.
2026-02-16 23:28:20 -08:00
DESKTOP-RTLN3BA\$punk
b23868c6db Merge branch 'dev' of https://github.com/MODSetter/SurfSense into dev 2026-02-16 23:18:39 -08:00
DESKTOP-RTLN3BA\$punk
338dd8d282 feat: add health check endpoint and improve rate limiting
- Introduced a health check endpoint to monitor API responsiveness.
- Updated SlowAPI limiter to increase default rate limits and added in-memory fallback for Redis unavailability.
- Implemented a timeout for seeding Surfsense documentation to prevent startup delays.
2026-02-16 23:18:29 -08:00
Anish Sarkar
a482cc95de chore: ran linting 2026-02-17 12:47:39 +05:30