@spool-lab/core 0.3.5 → 0.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/LICENSE +11 -0
  2. package/README.md +8 -5
  3. package/dist/db/db.d.ts +4 -0
  4. package/dist/db/db.d.ts.map +1 -1
  5. package/dist/db/db.js +103 -121
  6. package/dist/db/db.js.map +1 -1
  7. package/dist/db/queries.d.ts +9 -14
  8. package/dist/db/queries.d.ts.map +1 -1
  9. package/dist/db/queries.js +85 -179
  10. package/dist/db/queries.js.map +1 -1
  11. package/dist/index.d.ts +0 -19
  12. package/dist/index.d.ts.map +1 -1
  13. package/dist/index.js +0 -14
  14. package/dist/index.js.map +1 -1
  15. package/dist/sync/watcher.d.ts +38 -8
  16. package/dist/sync/watcher.d.ts.map +1 -1
  17. package/dist/sync/watcher.js +158 -43
  18. package/dist/sync/watcher.js.map +1 -1
  19. package/dist/types.d.ts +8 -18
  20. package/dist/types.d.ts.map +1 -1
  21. package/package.json +3 -10
  22. package/dist/connectors/capabilities/cookies-chrome.d.ts +0 -19
  23. package/dist/connectors/capabilities/cookies-chrome.d.ts.map +0 -1
  24. package/dist/connectors/capabilities/cookies-chrome.js +0 -199
  25. package/dist/connectors/capabilities/cookies-chrome.js.map +0 -1
  26. package/dist/connectors/capabilities/exec-impl.d.ts +0 -3
  27. package/dist/connectors/capabilities/exec-impl.d.ts.map +0 -1
  28. package/dist/connectors/capabilities/exec-impl.js +0 -108
  29. package/dist/connectors/capabilities/exec-impl.js.map +0 -1
  30. package/dist/connectors/capabilities/fetch-impl.d.ts +0 -3
  31. package/dist/connectors/capabilities/fetch-impl.d.ts.map +0 -1
  32. package/dist/connectors/capabilities/fetch-impl.js +0 -4
  33. package/dist/connectors/capabilities/fetch-impl.js.map +0 -1
  34. package/dist/connectors/capabilities/index.d.ts +0 -6
  35. package/dist/connectors/capabilities/index.d.ts.map +0 -1
  36. package/dist/connectors/capabilities/index.js +0 -6
  37. package/dist/connectors/capabilities/index.js.map +0 -1
  38. package/dist/connectors/capabilities/log-impl.d.ts +0 -3
  39. package/dist/connectors/capabilities/log-impl.d.ts.map +0 -1
  40. package/dist/connectors/capabilities/log-impl.js +0 -26
  41. package/dist/connectors/capabilities/log-impl.js.map +0 -1
  42. package/dist/connectors/capabilities/sqlite-impl.d.ts +0 -3
  43. package/dist/connectors/capabilities/sqlite-impl.d.ts.map +0 -1
  44. package/dist/connectors/capabilities/sqlite-impl.js +0 -19
  45. package/dist/connectors/capabilities/sqlite-impl.js.map +0 -1
  46. package/dist/connectors/loader.d.ts +0 -47
  47. package/dist/connectors/loader.d.ts.map +0 -1
  48. package/dist/connectors/loader.js +0 -328
  49. package/dist/connectors/loader.js.map +0 -1
  50. package/dist/connectors/npm-install.d.ts +0 -26
  51. package/dist/connectors/npm-install.d.ts.map +0 -1
  52. package/dist/connectors/npm-install.js +0 -71
  53. package/dist/connectors/npm-install.js.map +0 -1
  54. package/dist/connectors/prerequisites.d.ts +0 -14
  55. package/dist/connectors/prerequisites.d.ts.map +0 -1
  56. package/dist/connectors/prerequisites.js +0 -109
  57. package/dist/connectors/prerequisites.js.map +0 -1
  58. package/dist/connectors/registry-fetch.d.ts +0 -22
  59. package/dist/connectors/registry-fetch.d.ts.map +0 -1
  60. package/dist/connectors/registry-fetch.js +0 -54
  61. package/dist/connectors/registry-fetch.js.map +0 -1
  62. package/dist/connectors/registry.d.ts +0 -23
  63. package/dist/connectors/registry.d.ts.map +0 -1
  64. package/dist/connectors/registry.js +0 -59
  65. package/dist/connectors/registry.js.map +0 -1
  66. package/dist/connectors/sync-engine.d.ts +0 -30
  67. package/dist/connectors/sync-engine.d.ts.map +0 -1
  68. package/dist/connectors/sync-engine.js +0 -589
  69. package/dist/connectors/sync-engine.js.map +0 -1
  70. package/dist/connectors/sync-scheduler.d.ts +0 -56
  71. package/dist/connectors/sync-scheduler.d.ts.map +0 -1
  72. package/dist/connectors/sync-scheduler.js +0 -238
  73. package/dist/connectors/sync-scheduler.js.map +0 -1
  74. package/dist/connectors/trust-store.d.ts +0 -13
  75. package/dist/connectors/trust-store.d.ts.map +0 -1
  76. package/dist/connectors/trust-store.js +0 -48
  77. package/dist/connectors/trust-store.js.map +0 -1
  78. package/dist/connectors/types.d.ts +0 -111
  79. package/dist/connectors/types.d.ts.map +0 -1
  80. package/dist/connectors/types.js +0 -50
  81. package/dist/connectors/types.js.map +0 -1
@@ -1,4 +1,3 @@
1
- import { randomUUID } from 'node:crypto';
2
1
  import { DB_PATH, getDBSize } from './db.js';
3
2
  import { buildSearchPlan, canUseSessionSearchFts, getNaturalSearchPhrase, getNaturalSearchTerms, selectFtsTableKind } from './search-query.js';
4
3
  export function getOrCreateProject(db, sourceId, slug, displayPath, displayName) {
@@ -78,38 +77,29 @@ export function insertMessages(db, sessionId, sourceId, messages) {
78
77
  stmt.run(sessionId, sourceId, m.uuid, m.parentUuid, m.role, m.contentText, m.timestamp, m.isSidechain ? 1 : 0, JSON.stringify(m.toolNames), m.seq);
79
78
  }
80
79
  }
80
+ const SESSION_SELECT = `
81
+ SELECT
82
+ s.id, s.project_id AS projectId, s.source_id AS sourceId,
83
+ s.session_uuid AS sessionUuid, s.file_path AS filePath,
84
+ s.title, s.started_at AS startedAt, s.ended_at AS endedAt,
85
+ s.message_count AS messageCount, s.has_tool_use AS hasToolUse,
86
+ s.cwd, s.model,
87
+ src.name AS source,
88
+ p.display_path AS projectDisplayPath,
89
+ p.display_name AS projectDisplayName
90
+ FROM sessions s
91
+ JOIN sources src ON src.id = s.source_id
92
+ JOIN projects p ON p.id = s.project_id`;
81
93
  export function listRecentSessions(db, limit = 50) {
82
94
  return db.prepare(`
83
- SELECT
84
- s.id, s.project_id AS projectId, s.source_id AS sourceId,
85
- s.session_uuid AS sessionUuid, s.file_path AS filePath,
86
- s.title, s.started_at AS startedAt, s.ended_at AS endedAt,
87
- s.message_count AS messageCount, s.has_tool_use AS hasToolUse,
88
- s.cwd, s.model,
89
- src.name AS source,
90
- p.display_path AS projectDisplayPath,
91
- p.display_name AS projectDisplayName
92
- FROM sessions s
93
- JOIN sources src ON src.id = s.source_id
94
- JOIN projects p ON p.id = s.project_id
95
+ ${SESSION_SELECT}
95
96
  ORDER BY s.started_at DESC
96
97
  LIMIT ?
97
98
  `).all(limit).map(rowToSession);
98
99
  }
99
100
  export function getSessionWithMessages(db, sessionUuid) {
100
101
  const sessionRow = db.prepare(`
101
- SELECT
102
- s.id, s.project_id AS projectId, s.source_id AS sourceId,
103
- s.session_uuid AS sessionUuid, s.file_path AS filePath,
104
- s.title, s.started_at AS startedAt, s.ended_at AS endedAt,
105
- s.message_count AS messageCount, s.has_tool_use AS hasToolUse,
106
- s.cwd, s.model,
107
- src.name AS source,
108
- p.display_path AS projectDisplayPath,
109
- p.display_name AS projectDisplayName
110
- FROM sessions s
111
- JOIN sources src ON src.id = s.source_id
112
- JOIN projects p ON p.id = s.project_id
102
+ ${SESSION_SELECT}
113
103
  WHERE s.session_uuid = ?
114
104
  `).get(sessionUuid);
115
105
  if (!sessionRow)
@@ -138,7 +128,7 @@ export function getSessionWithMessages(db, sessionUuid) {
138
128
  return { session, messages };
139
129
  }
140
130
  export function searchFragments(db, query, opts = {}) {
141
- const { limit = 10, source, since } = opts;
131
+ const { limit = 10, source, since, onlyStarred } = opts;
142
132
  const rowLimit = Math.max(limit * 10, 50);
143
133
  const naturalTerms = getNaturalSearchTerms(query);
144
134
  const naturalPhrase = getNaturalSearchPhrase(query);
@@ -147,6 +137,7 @@ export function searchFragments(db, query, opts = {}) {
147
137
  return searchFragmentSessionFallback(db, naturalTerms, naturalPhrase, rowLimit, 'fts', {
148
138
  ...(source ? { source } : {}),
149
139
  ...(since ? { since } : {}),
140
+ ...(onlyStarred ? { onlyStarred } : {}),
150
141
  }).slice(0, limit);
151
142
  }
152
143
  const groups = buildSearchPlan(query).map(step => {
@@ -154,12 +145,14 @@ export function searchFragments(db, query, opts = {}) {
154
145
  return searchFragmentSessionFallback(db, naturalTerms, naturalPhrase, rowLimit, step.matchType, {
155
146
  ...(source ? { source } : {}),
156
147
  ...(since ? { since } : {}),
148
+ ...(onlyStarred ? { onlyStarred } : {}),
157
149
  });
158
150
  }
159
151
  const ftsTable = selectFtsTableKind(query) === 'trigram' ? 'messages_fts_trigram' : 'messages_fts';
160
152
  const rows = searchFragmentRows(db, ftsTable, step.query, rowLimit, {
161
153
  ...(source ? { source } : {}),
162
154
  ...(since ? { since } : {}),
155
+ ...(onlyStarred ? { onlyStarred } : {}),
163
156
  });
164
157
  return collapseFragmentRows(rows, step.matchType);
165
158
  });
@@ -202,7 +195,7 @@ export function searchSessionPreview(db, query, opts = {}) {
202
195
  });
203
196
  }
204
197
  function searchFragmentRows(db, ftsTable, ftsQuery, limit, opts = {}) {
205
- const { source, since } = opts;
198
+ const { source, since, onlyStarred } = opts;
206
199
  const conditions = [`${ftsTable} MATCH ?`, 'm.is_sidechain = 0'];
207
200
  const params = [ftsQuery];
208
201
  if (source) {
@@ -213,6 +206,9 @@ function searchFragmentRows(db, ftsTable, ftsQuery, limit, opts = {}) {
213
206
  conditions.push('m.timestamp >= ?');
214
207
  params.push(since);
215
208
  }
209
+ if (onlyStarred) {
210
+ conditions.push("EXISTS (SELECT 1 FROM stars WHERE stars.item_type = 'session' AND stars.item_uuid = sess.session_uuid)");
211
+ }
216
212
  params.push(limit);
217
213
  const sql = `
218
214
  SELECT
@@ -422,7 +418,7 @@ function searchSessionRowsByTerms(db, terms, phrase, limit, matchType, opts = {}
422
418
  return searchSessionRowsByLike(db, terms, limit, opts);
423
419
  }
424
420
  function searchSessionRowsByLike(db, terms, limit, opts = {}) {
425
- const { source, since } = opts;
421
+ const { source, since, onlyStarred } = opts;
426
422
  const titleScoreParts = [];
427
423
  const whereClauses = [];
428
424
  const scoreParams = [];
@@ -452,6 +448,9 @@ function searchSessionRowsByLike(db, terms, limit, opts = {}) {
452
448
  conditions.push('sess.started_at >= ?');
453
449
  params.push(since);
454
450
  }
451
+ if (onlyStarred) {
452
+ conditions.push("EXISTS (SELECT 1 FROM stars WHERE stars.item_type = 'session' AND stars.item_uuid = sess.session_uuid)");
453
+ }
455
454
  params.push(limit);
456
455
  const titleScoreExpr = titleScoreParts.filter((_, index) => index % 3 === 0).join(' + ');
457
456
  const userScoreExpr = titleScoreParts.filter((_, index) => index % 3 === 1).join(' + ');
@@ -480,7 +479,7 @@ function searchSessionRowsByLike(db, terms, limit, opts = {}) {
480
479
  return db.prepare(sql).all(...params);
481
480
  }
482
481
  function searchSessionRowsByFts(db, terms, phrase, limit, matchType, opts = {}) {
483
- const { source, since } = opts;
482
+ const { source, since, onlyStarred } = opts;
484
483
  const ftsTable = selectFtsTableKind(phrase) === 'trigram' ? 'session_search_fts_trigram' : 'session_search_fts';
485
484
  const ftsQuery = matchType === 'phrase'
486
485
  ? `"${phrase.replace(/"/g, '""')}"`
@@ -507,6 +506,9 @@ function searchSessionRowsByFts(db, terms, phrase, limit, matchType, opts = {})
507
506
  conditions.push('sess.started_at >= ?');
508
507
  params.push(since);
509
508
  }
509
+ if (onlyStarred) {
510
+ conditions.push("EXISTS (SELECT 1 FROM stars WHERE stars.item_type = 'session' AND stars.item_uuid = sess.session_uuid)");
511
+ }
510
512
  params.push(limit);
511
513
  const titleScoreExpr = titleScoreParts.filter((_, index) => index % 3 === 0).join(' + ');
512
514
  const userScoreExpr = titleScoreParts.filter((_, index) => index % 3 === 1).join(' + ');
@@ -629,6 +631,60 @@ function escapeLike(value) {
629
631
  .replace(/%/g, '\\%')
630
632
  .replace(/_/g, '\\_');
631
633
  }
634
+ // ── Stars (sessions + captures) ─────────────────────────────────────────────
635
+ export function starItem(db, kind, uuid) {
636
+ db.prepare('INSERT OR IGNORE INTO stars (item_type, item_uuid) VALUES (?, ?)').run(kind, uuid);
637
+ }
638
+ export function unstarItem(db, kind, uuid) {
639
+ db.prepare('DELETE FROM stars WHERE item_type = ? AND item_uuid = ?').run(kind, uuid);
640
+ }
641
+ export function isStarred(db, kind, uuid) {
642
+ const row = db
643
+ .prepare('SELECT 1 AS hit FROM stars WHERE item_type = ? AND item_uuid = ?')
644
+ .get(kind, uuid);
645
+ return row !== undefined;
646
+ }
647
+ export function getStarredUuidsByType(db) {
648
+ const rows = db.prepare(`
649
+ SELECT item_uuid AS uuid
650
+ FROM stars
651
+ WHERE item_type = 'session'
652
+ AND EXISTS (SELECT 1 FROM sessions WHERE session_uuid = stars.item_uuid)
653
+ `).all();
654
+ return { session: rows.map(r => r.uuid) };
655
+ }
656
+ export function listStarredItems(db, limit = 200) {
657
+ // Orphan-filter at the SQL level so LIMIT counts only live rows; otherwise
658
+ // a user with 200+ orphaned stars could see an empty page.
659
+ const rows = db.prepare(`
660
+ SELECT item_uuid AS uuid, starred_at AS starredAt
661
+ FROM stars
662
+ WHERE item_type = 'session'
663
+ AND EXISTS (SELECT 1 FROM sessions WHERE session_uuid = stars.item_uuid)
664
+ ORDER BY starred_at DESC
665
+ LIMIT ?
666
+ `).all(limit);
667
+ if (rows.length === 0)
668
+ return [];
669
+ const sessionUuids = rows.map(r => r.uuid);
670
+ const sessionMap = new Map();
671
+ const placeholders = sessionUuids.map(() => '?').join(', ');
672
+ const sessRows = db.prepare(`
673
+ ${SESSION_SELECT}
674
+ WHERE s.session_uuid IN (${placeholders})
675
+ `).all(...sessionUuids);
676
+ for (const row of sessRows) {
677
+ const session = rowToSession(row);
678
+ sessionMap.set(session.sessionUuid, session);
679
+ }
680
+ const items = [];
681
+ for (const r of rows) {
682
+ const session = sessionMap.get(r.uuid);
683
+ if (session)
684
+ items.push({ kind: 'session', starredAt: r.starredAt, session });
685
+ }
686
+ return items;
687
+ }
632
688
  export function getStatus(db) {
633
689
  const counts = db.prepare(`
634
690
  SELECT src.name, COUNT(*) AS cnt
@@ -675,154 +731,4 @@ function getProfileLabelFromFilePath(filePath) {
675
731
  const match = filePath.match(/\/\.(?:claude|codex)-profiles\/([^/]+)\//);
676
732
  return match?.[1];
677
733
  }
678
- // ── Captures ────────────────────────────────────────────────────────────────
679
- export function insertCapture(db, sourceId, item) {
680
- const captureUuid = randomUUID();
681
- // Dedup by platform_id if provided
682
- if (item.platformId) {
683
- const existing = db
684
- .prepare('SELECT id FROM captures WHERE platform = ? AND platform_id = ?')
685
- .get(item.platform, item.platformId);
686
- if (existing) {
687
- db.prepare(`
688
- UPDATE captures SET
689
- title = ?, content_text = ?, author = ?, metadata = ?,
690
- captured_at = ?, raw_json = ?, thumbnail_url = ?
691
- WHERE id = ?
692
- `).run(item.title, item.contentText, item.author, JSON.stringify(item.metadata), item.capturedAt, item.rawJson, item.thumbnailUrl, existing.id);
693
- return existing.id;
694
- }
695
- }
696
- const result = db.prepare(`
697
- INSERT INTO captures
698
- (source_id, capture_uuid, url, title, content_text,
699
- author, platform, platform_id, content_type, thumbnail_url,
700
- metadata, captured_at, raw_json)
701
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
702
- `).run(sourceId, captureUuid, item.url, item.title, item.contentText, item.author, item.platform, item.platformId, item.contentType, item.thumbnailUrl, JSON.stringify(item.metadata), item.capturedAt, item.rawJson);
703
- return Number(result.lastInsertRowid);
704
- }
705
- export function searchCaptures(db, query, opts = {}) {
706
- const { limit = 10, platform, since } = opts;
707
- const ftsTable = selectFtsTableKind(query) === 'trigram' ? 'captures_fts_trigram' : 'captures_fts';
708
- const rowLimit = Math.max(limit * 10, 50);
709
- const groups = buildSearchPlan(query).map(step => {
710
- const rows = searchCaptureRows(db, ftsTable, step.query, rowLimit, {
711
- ...(platform ? { platform } : {}),
712
- ...(since ? { since } : {}),
713
- });
714
- return mapCaptureRows(rows, step.matchType);
715
- });
716
- return mergeCaptureGroups(groups, limit);
717
- }
718
- function searchCaptureRows(db, ftsTable, ftsQuery, limit, opts = {}) {
719
- const { platform, since } = opts;
720
- const conditions = [`${ftsTable} MATCH ?`];
721
- const params = [ftsQuery];
722
- if (platform) {
723
- conditions.push('c.platform = ?');
724
- params.push(platform);
725
- }
726
- if (since) {
727
- conditions.push('c.captured_at >= ?');
728
- params.push(since);
729
- }
730
- params.push(limit);
731
- const sql = `
732
- SELECT
733
- rank,
734
- c.id AS captureId,
735
- c.capture_uuid AS captureUuid,
736
- c.url,
737
- c.title,
738
- c.author,
739
- c.platform,
740
- c.content_type AS contentType,
741
- c.captured_at AS capturedAt,
742
- snippet(${ftsTable}, -1, '<mark>', '</mark>', '…', 20) AS snippet
743
- FROM ${ftsTable}
744
- JOIN captures c ON c.id = ${ftsTable}.rowid
745
- WHERE ${conditions.join(' AND ')}
746
- ORDER BY rank
747
- LIMIT ?
748
- `;
749
- return db.prepare(sql).all(...params);
750
- }
751
- function mapCaptureRows(rows, matchType) {
752
- return rows.map((row, i) => ({
753
- rank: i + 1,
754
- captureId: row['captureId'],
755
- captureUuid: row['captureUuid'],
756
- matchType,
757
- url: row['url'],
758
- title: row['title'] || '(no title)',
759
- snippet: row['snippet'],
760
- platform: row['platform'],
761
- contentType: row['contentType'],
762
- author: row['author'] ?? null,
763
- capturedAt: row['capturedAt'],
764
- }));
765
- }
766
- function mergeCaptureGroups(groups, limit) {
767
- const merged = [];
768
- const seen = new Set();
769
- for (const group of groups) {
770
- for (const capture of group) {
771
- if (seen.has(capture.captureUuid))
772
- continue;
773
- if (merged.length >= limit)
774
- continue;
775
- const next = {
776
- ...capture,
777
- rank: merged.length + 1,
778
- };
779
- merged.push(next);
780
- seen.add(next.captureUuid);
781
- }
782
- }
783
- return merged;
784
- }
785
- export function searchAll(db, query, opts = {}) {
786
- const { limit = 20, source, since } = opts;
787
- const fragOpts = { limit };
788
- if (source === 'claude' || source === 'codex' || source === 'gemini')
789
- fragOpts.source = source;
790
- if (since)
791
- fragOpts.since = since;
792
- const fragments = searchFragments(db, query, fragOpts)
793
- .map(f => ({ ...f, kind: 'fragment' }));
794
- const capOpts = { limit };
795
- if (since)
796
- capOpts.since = since;
797
- const captures = searchCaptures(db, query, capOpts)
798
- .map(c => ({ ...c, kind: 'capture' }));
799
- return [...fragments, ...captures]
800
- .sort(compareSearchResultRelevance)
801
- .slice(0, limit)
802
- .map((result, index) => ({ ...result, rank: index + 1 }));
803
- }
804
- function compareSearchResultRelevance(a, b) {
805
- const typeDiff = getMatchTypePriority(a.matchType) - getMatchTypePriority(b.matchType);
806
- if (typeDiff !== 0)
807
- return typeDiff;
808
- return a.rank - b.rank;
809
- }
810
- function getMatchTypePriority(matchType) {
811
- switch (matchType) {
812
- case 'phrase':
813
- return 0;
814
- case 'all_terms':
815
- return 1;
816
- default:
817
- return 2;
818
- }
819
- }
820
- export function getCaptureCount(db, platform) {
821
- if (platform) {
822
- const row = db.prepare('SELECT COUNT(*) AS cnt FROM captures WHERE platform = ?').get(platform);
823
- return row.cnt;
824
- }
825
- const row = db.prepare('SELECT COUNT(*) AS cnt FROM captures').get();
826
- return row.cnt;
827
- }
828
734
  //# sourceMappingURL=queries.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/db/queries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"queries.js","sourceRoot":"","sources":["../../src/db/queries.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -6,24 +6,5 @@ export * from './parsers/codex.js';
6
6
  export * from './parsers/gemini.js';
7
7
  export * from './sync/syncer.js';
8
8
  export * from './sync/watcher.js';
9
- export { searchFragments, searchCaptures, searchAll } from './db/queries.js';
10
9
  export { resolveSystemBinary, cachedResolve, clearResolveCache } from './util/resolve-bin.js';
11
- export { ConnectorRegistry } from './connectors/registry.js';
12
- export { SyncEngine, loadSyncState, saveSyncState } from './connectors/sync-engine.js';
13
- export { SyncScheduler } from './connectors/sync-scheduler.js';
14
- export type { SchedulerEvent, SchedulerEventHandler } from './connectors/sync-scheduler.js';
15
- export { SyncError, SyncErrorCode, SYNC_ERROR_HINTS, DEFAULT_SCHEDULE, } from './connectors/types.js';
16
- export type { Connector, AuthStatus, FetchContext, PageResult, SyncState, SyncOptions, ConnectorSyncResult, SyncProgress, SyncJob, ScheduleConfig, ConnectorStatus, SchedulerStatus, } from './connectors/types.js';
17
- export { downloadAndInstall, uninstallConnector, resolveNpmPackage, registryUrl, checkForUpdates } from './connectors/npm-install.js';
18
- export type { UpdateInfo } from './connectors/npm-install.js';
19
- export { fetchRegistry } from './connectors/registry-fetch.js';
20
- export type { RegistryConnector } from './connectors/registry-fetch.js';
21
- export { loadConnectors } from './connectors/loader.js';
22
- export type { LoadDeps, LoadReport, LoadResult, CapabilityImpls } from './connectors/loader.js';
23
- export { TrustStore } from './connectors/trust-store.js';
24
- export { makeFetchCapability, makeChromeCookiesCapability, makeLogCapabilityFor, makeSqliteCapability, makeExecCapability, } from './connectors/capabilities/index.js';
25
- export { PrerequisiteChecker } from './connectors/prerequisites.js';
26
- export type { ConnectorPackage } from './connectors/types.js';
27
- export type { Prerequisite, PrerequisiteKind, Detect, Install, ManualInstall, SetupStep, SetupStatus, PrerequisitesCapability, } from '@spool-lab/connector-sdk';
28
- export { checkAuthViaPrerequisites } from '@spool-lab/connector-sdk';
29
10
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAG7F,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,gCAAgC,CAAA;AAC3F,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uBAAuB,CAAA;AAC9B,YAAY,EACV,SAAS,EACT,UAAU,EACV,YAAY,EACZ,UAAU,EACV,SAAS,EACT,WAAW,EACX,mBAAmB,EACnB,YAAY,EACZ,OAAO,EACP,cAAc,EACd,eAAe,EACf,eAAe,GAChB,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AACrI,YAAY,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAC9D,YAAY,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAGvE,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AACvD,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAA;AAC/F,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AACnE,YAAY,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAA;AAG7D,YAAY,EACV,YAAY,EACZ,gBAAgB,EAChB,MAAM,EACN,OAAO,EACP,aAAa,EACb,SAAS,EACT,WAAW,EACX,uBAAuB,GACxB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA"}
package/dist/index.js CHANGED
@@ -6,19 +6,5 @@ export * from './parsers/codex.js';
6
6
  export * from './parsers/gemini.js';
7
7
  export * from './sync/syncer.js';
8
8
  export * from './sync/watcher.js';
9
- export { searchFragments, searchCaptures, searchAll } from './db/queries.js';
10
9
  export { resolveSystemBinary, cachedResolve, clearResolveCache } from './util/resolve-bin.js';
11
- // ── Connector framework ─────────────────────────────────────────────────────
12
- export { ConnectorRegistry } from './connectors/registry.js';
13
- export { SyncEngine, loadSyncState, saveSyncState } from './connectors/sync-engine.js';
14
- export { SyncScheduler } from './connectors/sync-scheduler.js';
15
- export { SyncError, SyncErrorCode, SYNC_ERROR_HINTS, DEFAULT_SCHEDULE, } from './connectors/types.js';
16
- export { downloadAndInstall, uninstallConnector, resolveNpmPackage, registryUrl, checkForUpdates } from './connectors/npm-install.js';
17
- export { fetchRegistry } from './connectors/registry-fetch.js';
18
- // ── Plugin loader ──────────────────────────────────────────────────────────
19
- export { loadConnectors } from './connectors/loader.js';
20
- export { TrustStore } from './connectors/trust-store.js';
21
- export { makeFetchCapability, makeChromeCookiesCapability, makeLogCapabilityFor, makeSqliteCapability, makeExecCapability, } from './connectors/capabilities/index.js';
22
- export { PrerequisiteChecker } from './connectors/prerequisites.js';
23
- export { checkAuthViaPrerequisites } from '@spool-lab/connector-sdk';
24
10
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC5E,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA;AAE7F,+EAA+E;AAC/E,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAE9D,OAAO,EACL,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,GACjB,MAAM,uBAAuB,CAAA;AAgB9B,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAA;AAErI,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAA;AAG9D,8EAA8E;AAC9E,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,6BAA6B,CAAA;AACxD,OAAO,EACL,mBAAmB,EACnB,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,EACpB,kBAAkB,GACnB,MAAM,oCAAoC,CAAA;AAC3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,+BAA+B,CAAA;AAcnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA;AAC1B,cAAc,YAAY,CAAA;AAC1B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,qBAAqB,CAAA;AACnC,cAAc,oBAAoB,CAAA;AAClC,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,mBAAmB,CAAA;AACjC,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAA"}
@@ -1,19 +1,49 @@
1
+ import { watch as fsWatch } from 'node:fs';
1
2
  import type { Syncer } from './syncer.js';
2
- export type WatcherEvent = 'new-sessions';
3
- export type WatcherEventCallback = (event: WatcherEvent, data: {
4
- count: number;
5
- }) => void;
3
+ export type WatcherEvent = 'new-sessions' | 'error';
4
+ export interface WatcherEventDataMap {
5
+ 'new-sessions': {
6
+ count: number;
7
+ };
8
+ 'error': {
9
+ error: Error;
10
+ root?: string;
11
+ };
12
+ }
13
+ export type WatcherEventData = WatcherEventDataMap[WatcherEvent];
14
+ export type WatcherEventCallback<E extends WatcherEvent = WatcherEvent> = (event: E, data: WatcherEventDataMap[E]) => void;
15
+ export interface SpoolWatcherOptions {
16
+ /** Milliseconds of inactivity before considering a file's writes finished. */
17
+ stabilityMs?: number;
18
+ /** Poll interval while waiting for size/mtime to settle. */
19
+ pollMs?: number;
20
+ /** Window over which new-session events coalesce into a single emission. */
21
+ flushMs?: number;
22
+ /** Dependency injection for tests — defaults to node:fs watch. */
23
+ watchFn?: typeof fsWatch;
24
+ }
6
25
  export declare class SpoolWatcher {
7
26
  private syncer;
8
- private watcher;
27
+ private watchers;
9
28
  private listeners;
29
+ private pending;
10
30
  private pendingNew;
11
31
  private flushTimer;
12
32
  private sourceRoots;
13
- constructor(syncer: Syncer);
33
+ private stopped;
34
+ private readonly stabilityMs;
35
+ private readonly pollMs;
36
+ private readonly flushMs;
37
+ private readonly watchFn;
38
+ constructor(syncer: Syncer, opts?: SpoolWatcherOptions);
14
39
  start(): void;
15
40
  stop(): void;
16
- on(event: WatcherEvent, cb: WatcherEventCallback): void;
17
- private handleFile;
41
+ on<E extends WatcherEvent>(event: E, cb: WatcherEventCallback<E>): void;
42
+ private watchRoot;
43
+ private schedulePoll;
44
+ private pollStability;
45
+ private runSync;
46
+ private flushNew;
47
+ private emit;
18
48
  }
19
49
  //# sourceMappingURL=watcher.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAKzC,MAAM,MAAM,YAAY,GAAG,cAAc,CAAA;AACzC,MAAM,MAAM,oBAAoB,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,CAAA;AAEzF,qBAAa,YAAY;IAWX,OAAO,CAAC,MAAM;IAV1B,OAAO,CAAC,OAAO,CAAyB;IACxC,OAAO,CAAC,SAAS,CAA6B;IAC9C,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,WAAW,CAIlB;gBAEmB,MAAM,EAAE,MAAM;IAElC,KAAK,IAAI,IAAI;IA0Bb,IAAI,IAAI,IAAI;IAMZ,EAAE,CAAC,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,oBAAoB,GAAG,IAAI;IAIvD,OAAO,CAAC,UAAU;CAgBnB"}
1
+ {"version":3,"file":"watcher.d.ts","sourceRoot":"","sources":["../../src/sync/watcher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,IAAI,OAAO,EAA4B,MAAM,SAAS,CAAA;AAEpE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAIzC,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,OAAO,CAAA;AAEnD,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACjC,OAAO,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;CACzC;AAED,MAAM,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,YAAY,CAAC,CAAA;AAEhE,MAAM,MAAM,oBAAoB,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI,CACxE,KAAK,EAAE,CAAC,EACR,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,KACzB,IAAI,CAAA;AAET,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,4DAA4D;IAC5D,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,kEAAkE;IAClE,OAAO,CAAC,EAAE,OAAO,OAAO,CAAA;CACzB;AAYD,qBAAa,YAAY;IAaX,OAAO,CAAC,MAAM;IAZ1B,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,SAAS,CAAuD;IACxE,OAAO,CAAC,OAAO,CAAuC;IACtD,OAAO,CAAC,UAAU,CAAI;IACtB,OAAO,CAAC,UAAU,CAA6C;IAC/D,OAAO,CAAC,WAAW,CAAyE;IAC5F,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAQ;IACpC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAQ;IAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAQ;IAChC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgB;gBAEpB,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,mBAAwB;IAOlE,KAAK,IAAI,IAAI;IAeb,IAAI,IAAI,IAAI;IAeZ,EAAE,CAAC,CAAC,SAAS,YAAY,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,oBAAoB,CAAC,CAAC,CAAC,GAAG,IAAI;IAMvE,OAAO,CAAC,SAAS;IA0BjB,OAAO,CAAC,YAAY;IAoBpB,OAAO,CAAC,aAAa;IA+BrB,OAAO,CAAC,OAAO;IAsBf,OAAO,CAAC,QAAQ;IAOhB,OAAO,CAAC,IAAI;CAOb"}