mirror of
https://github.com/simstudioai/sim.git
synced 2026-04-06 03:00:16 -04:00
* feat(knowledge): connectors, user exclusions, expanded tools & airtable integration * improvements * removed redundant util * ack PR comments * remove module level cache, use syncContext between paginated calls to avoid redundant schema fetches * regen migrations, ack PR comments * ack PR comment * added tests * ack comments * ack comments * feat(db): add knowledge connector migration after merge Generated migration 0162 for knowledge_connector and knowledge_connector_sync_log tables after resolving merge conflicts with feat/mothership-copilot. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(connectors): audit fixes for sync engine, connectors, and knowledge tools - Extract shared computeContentHash to connectors/utils.ts (dedup across 7 connectors) - Include error'd connectors in cron auto-retry query - Add syncContext caching for Confluence (cloudId, spaceId) - Batch Confluence label fetches with concurrency limit of 10 - Enforce maxPages in Confluence v2 path - Clean up stale storage files on document update - Retry stuck documents (pending/failed) after sync completes - Soft-delete documents and reclaim tag slots on connector deletion - Add incremental sync support to ConnectorConfig interface - Fix offset:0 falsy check in list_documents tool Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * perf(connectors): deep audit — extract shared utils, fix pagination, optimize API calls - Extract shared htmlToPlainText to connectors/utils.ts (dedup Confluence + Google Drive) - Add syncContext caching for Jira cloudId, Notion/Linear/Google Drive cumulative limits - Fix cumulative maxPages/maxIssues/maxFiles enforcement across pagination pages - Bump Notion page_size from 20 to 100 (5x fewer API round-trips) - Batch Notion child page fetching with concurrency=5 (was serial N+1) - Bump Confluence v2 limit from 50 to 250 (v2 API supports it) - Pass syncContext through Confluence CQL path for cumulative tracking - Upgrade GitHub tree truncation warning to error level - Fix sync-engine test mock to include inArray export Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * refactor(connectors): extract tag helpers, fix Notion maxPages, rewrite broken tests - Add parseTagDate and joinTagArray helpers to connectors/utils.ts - Update all 7 connectors to use shared tag mapping helpers (removes 12+ duplication instances) - Fix Notion listFromParentPage cumulative maxPages check (was using local count) - Rewrite 3 broken connector route test files to use vi.hoisted() + static vi.mock() pattern instead of deprecated vi.doMock/vi.resetModules (all 86 tests now pass) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(connectors): add loading skeletons, delete pending state, and pause feedback Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * fix(knowledge): escape LIKE wildcards, guard restore from un-deleting, fix offset=0 - Escape %, _, \ in tag filter LIKE patterns to prevent incorrect matches - Add isNull(deletedAt) guard to restore operation to prevent un-deleting soft-deleted docs - Change offset check from falsy to != null so offset=0 is not dropped Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>