crewly 1.8.8 → 1.8.9

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 (164) hide show
  1. package/dist/backend/backend/src/constants.d.ts +12 -0
  2. package/dist/backend/backend/src/constants.d.ts.map +1 -1
  3. package/dist/backend/backend/src/constants.js +12 -0
  4. package/dist/backend/backend/src/constants.js.map +1 -1
  5. package/dist/backend/backend/src/controllers/browser/browser.controller.d.ts.map +1 -1
  6. package/dist/backend/backend/src/controllers/browser/browser.controller.js +17 -0
  7. package/dist/backend/backend/src/controllers/browser/browser.controller.js.map +1 -1
  8. package/dist/backend/backend/src/controllers/cloud/cloud.controller.d.ts.map +1 -1
  9. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js +8 -1
  10. package/dist/backend/backend/src/controllers/cloud/cloud.controller.js.map +1 -1
  11. package/dist/backend/backend/src/index.d.ts.map +1 -1
  12. package/dist/backend/backend/src/index.js +15 -7
  13. package/dist/backend/backend/src/index.js.map +1 -1
  14. package/dist/backend/backend/src/services/browser/browser-bridge.service.d.ts.map +1 -1
  15. package/dist/backend/backend/src/services/browser/browser-bridge.service.js +15 -29
  16. package/dist/backend/backend/src/services/browser/browser-bridge.service.js.map +1 -1
  17. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts +97 -1
  18. package/dist/backend/backend/src/services/browser/browser-proxy.service.d.ts.map +1 -1
  19. package/dist/backend/backend/src/services/browser/browser-proxy.service.js +174 -15
  20. package/dist/backend/backend/src/services/browser/browser-proxy.service.js.map +1 -1
  21. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.d.ts +12 -4
  22. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.d.ts.map +1 -1
  23. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.js +17 -5
  24. package/dist/backend/backend/src/services/browser/browser-relay-adapter.service.js.map +1 -1
  25. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts +75 -0
  26. package/dist/backend/backend/src/services/cloud/cloud-client.service.d.ts.map +1 -1
  27. package/dist/backend/backend/src/services/cloud/cloud-client.service.js +164 -12
  28. package/dist/backend/backend/src/services/cloud/cloud-client.service.js.map +1 -1
  29. package/dist/cli/backend/src/constants.d.ts +12 -0
  30. package/dist/cli/backend/src/constants.d.ts.map +1 -1
  31. package/dist/cli/backend/src/constants.js +12 -0
  32. package/dist/cli/backend/src/constants.js.map +1 -1
  33. package/dist/cli/cli/src/index.js +0 -0
  34. package/package.json +1 -1
  35. package/config/constants.d.ts.map +0 -1
  36. package/config/index.d.ts.map +0 -1
  37. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts +0 -169
  38. package/dist/backend/backend/src/controllers/task-management/task-management.controller.d.ts.map +0 -1
  39. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js +0 -1779
  40. package/dist/backend/backend/src/controllers/task-management/task-management.controller.js.map +0 -1
  41. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts +0 -513
  42. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.d.ts.map +0 -1
  43. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js +0 -1568
  44. package/dist/backend/backend/src/services/agent/crewly-agent/agent-runner.service.js.map +0 -1
  45. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.d.ts +0 -86
  46. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.d.ts.map +0 -1
  47. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.js +0 -147
  48. package/dist/backend/backend/src/services/agent/crewly-agent/agent-worker.js.map +0 -1
  49. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts +0 -68
  50. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.d.ts.map +0 -1
  51. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js +0 -131
  52. package/dist/backend/backend/src/services/agent/crewly-agent/api-client.js.map +0 -1
  53. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts +0 -130
  54. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.d.ts.map +0 -1
  55. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js +0 -263
  56. package/dist/backend/backend/src/services/agent/crewly-agent/audit-log.service.js.map +0 -1
  57. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts +0 -74
  58. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.d.ts.map +0 -1
  59. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js +0 -140
  60. package/dist/backend/backend/src/services/agent/crewly-agent/audit-trail.service.js.map +0 -1
  61. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts +0 -29
  62. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.d.ts.map +0 -1
  63. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js +0 -279
  64. package/dist/backend/backend/src/services/agent/crewly-agent/auditor-tools.js.map +0 -1
  65. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts +0 -340
  66. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.d.ts.map +0 -1
  67. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js +0 -1176
  68. package/dist/backend/backend/src/services/agent/crewly-agent/crewly-agent-runtime.service.js.map +0 -1
  69. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.d.ts +0 -79
  70. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.d.ts.map +0 -1
  71. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.js +0 -145
  72. package/dist/backend/backend/src/services/agent/crewly-agent/deepseek-sse-transform.js.map +0 -1
  73. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts +0 -79
  74. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.d.ts.map +0 -1
  75. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js +0 -218
  76. package/dist/backend/backend/src/services/agent/crewly-agent/env-isolation.service.js.map +0 -1
  77. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts +0 -16
  78. package/dist/backend/backend/src/services/agent/crewly-agent/index.d.ts.map +0 -1
  79. package/dist/backend/backend/src/services/agent/crewly-agent/index.js +0 -16
  80. package/dist/backend/backend/src/services/agent/crewly-agent/index.js.map +0 -1
  81. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts +0 -135
  82. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.d.ts.map +0 -1
  83. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js +0 -185
  84. package/dist/backend/backend/src/services/agent/crewly-agent/mcp-tool-bridge.js.map +0 -1
  85. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts +0 -141
  86. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.d.ts.map +0 -1
  87. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js +0 -310
  88. package/dist/backend/backend/src/services/agent/crewly-agent/model-manager.js.map +0 -1
  89. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts +0 -91
  90. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.d.ts.map +0 -1
  91. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js +0 -143
  92. package/dist/backend/backend/src/services/agent/crewly-agent/output-filter.service.js.map +0 -1
  93. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts +0 -103
  94. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.d.ts.map +0 -1
  95. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js +0 -256
  96. package/dist/backend/backend/src/services/agent/crewly-agent/prompt-guard.service.js.map +0 -1
  97. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts +0 -143
  98. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.d.ts.map +0 -1
  99. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js +0 -264
  100. package/dist/backend/backend/src/services/agent/crewly-agent/rate-limiter.js.map +0 -1
  101. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts +0 -13
  102. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.d.ts.map +0 -1
  103. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js +0 -91
  104. package/dist/backend/backend/src/services/agent/crewly-agent/smoke-test.js.map +0 -1
  105. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts +0 -135
  106. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.d.ts.map +0 -1
  107. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js +0 -1937
  108. package/dist/backend/backend/src/services/agent/crewly-agent/tool-registry.js.map +0 -1
  109. package/dist/backend/backend/src/services/autonomous/auto-assign.service.d.ts +0 -429
  110. package/dist/backend/backend/src/services/autonomous/auto-assign.service.d.ts.map +0 -1
  111. package/dist/backend/backend/src/services/autonomous/auto-assign.service.js +0 -852
  112. package/dist/backend/backend/src/services/autonomous/auto-assign.service.js.map +0 -1
  113. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts +0 -171
  114. package/dist/backend/backend/src/services/project/task-tracking.service.d.ts.map +0 -1
  115. package/dist/backend/backend/src/services/project/task-tracking.service.js +0 -725
  116. package/dist/backend/backend/src/services/project/task-tracking.service.js.map +0 -1
  117. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts +0 -118
  118. package/dist/backend/backend/src/services/v3/project-task-watcher.service.d.ts.map +0 -1
  119. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js +0 -326
  120. package/dist/backend/backend/src/services/v3/project-task-watcher.service.js.map +0 -1
  121. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.d.ts +0 -74
  122. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.d.ts.map +0 -1
  123. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.js +0 -154
  124. package/dist/backend/backend/src/services/wiki/wiki-chat-subscriber.service.js.map +0 -1
  125. package/dist/backend/backend/src/types/auto-assign.types.d.ts +0 -271
  126. package/dist/backend/backend/src/types/auto-assign.types.d.ts.map +0 -1
  127. package/dist/backend/backend/src/types/auto-assign.types.js +0 -136
  128. package/dist/backend/backend/src/types/auto-assign.types.js.map +0 -1
  129. package/dist/backend/backend/src/utils/esm-require.utils.d.ts +0 -111
  130. package/dist/backend/backend/src/utils/esm-require.utils.d.ts.map +0 -1
  131. package/dist/backend/backend/src/utils/esm-require.utils.js +0 -124
  132. package/dist/backend/backend/src/utils/esm-require.utils.js.map +0 -1
  133. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts +0 -220
  134. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.d.ts.map +0 -1
  135. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js +0 -37
  136. package/dist/cli/backend/src/services/ai/prompt-modules/prompt-module.interface.js.map +0 -1
  137. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts +0 -56
  138. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.d.ts.map +0 -1
  139. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js +0 -91
  140. package/dist/cli/backend/src/services/knowledge/fts5-search-strategy.js.map +0 -1
  141. package/dist/cli/backend/src/services/knowledge/learnings-index.service.d.ts +0 -159
  142. package/dist/cli/backend/src/services/knowledge/learnings-index.service.d.ts.map +0 -1
  143. package/dist/cli/backend/src/services/knowledge/learnings-index.service.js +0 -304
  144. package/dist/cli/backend/src/services/knowledge/learnings-index.service.js.map +0 -1
  145. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts +0 -115
  146. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.d.ts.map +0 -1
  147. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js +0 -215
  148. package/dist/cli/backend/src/services/knowledge/wiki-compiler.service.js.map +0 -1
  149. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts +0 -78
  150. package/dist/cli/backend/src/services/memory/embedding-provider.d.ts.map +0 -1
  151. package/dist/cli/backend/src/services/memory/embedding-provider.js +0 -179
  152. package/dist/cli/backend/src/services/memory/embedding-provider.js.map +0 -1
  153. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts +0 -331
  154. package/dist/cli/backend/src/services/memory/vector-store.service.d.ts.map +0 -1
  155. package/dist/cli/backend/src/services/memory/vector-store.service.js +0 -814
  156. package/dist/cli/backend/src/services/memory/vector-store.service.js.map +0 -1
  157. package/dist/cli/backend/src/services/project/task-tracking.service.d.ts +0 -171
  158. package/dist/cli/backend/src/services/project/task-tracking.service.d.ts.map +0 -1
  159. package/dist/cli/backend/src/services/project/task-tracking.service.js +0 -725
  160. package/dist/cli/backend/src/services/project/task-tracking.service.js.map +0 -1
  161. package/dist/cli/backend/src/types/auto-assign.types.d.ts +0 -271
  162. package/dist/cli/backend/src/types/auto-assign.types.d.ts.map +0 -1
  163. package/dist/cli/backend/src/types/auto-assign.types.js +0 -136
  164. package/dist/cli/backend/src/types/auto-assign.types.js.map +0 -1
@@ -1,331 +0,0 @@
1
- /**
2
- * Vector Store Service — v2
3
- *
4
- * Local, on-device vector storage using SQLite (better-sqlite3) with optional
5
- * sqlite-vec extension for native KNN search. Falls back gracefully to
6
- * JavaScript cosine similarity when the extension is unavailable.
7
- *
8
- * v2 improvements over v1:
9
- * - Binary BLOB storage (Float32Array) instead of JSON TEXT (~4× smaller, faster)
10
- * - Optional sqlite-vec integration for native SQL-based KNN search (cosine metric)
11
- * - Dimension validation ensures all vectors in a scope share the same width
12
- * - Prepared statement caching for repeated operations
13
- * - Input sanitization (NaN, Infinity rejection)
14
- * - Batch upsert with transaction wrapping
15
- * - Automatic schema migration from v1 (JSON TEXT) databases
16
- *
17
- * Storage locations:
18
- * - Global scope: ~/.crewly/vector-store.db
19
- * - Project scope: {projectPath}/.crewly/vector-store.db
20
- *
21
- * @module services/memory/vector-store.service
22
- */
23
- /** Reset the sqlite-vec loader state (for testing). */
24
- export declare function resetSqliteVecLoader(): void;
25
- /** Constants for the vector store */
26
- export declare const VECTOR_STORE_CONSTANTS: {
27
- /** SQLite database filename */
28
- readonly DB_FILENAME: "vector-store.db";
29
- /** Default number of results for similarity search */
30
- readonly DEFAULT_SEARCH_LIMIT: 10;
31
- /** Minimum cosine similarity threshold for search results */
32
- readonly DEFAULT_SIMILARITY_THRESHOLD: 0.1;
33
- /** Maximum metadata JSON size (bytes) */
34
- readonly MAX_METADATA_SIZE: 65536;
35
- /** Current schema version */
36
- readonly SCHEMA_VERSION: 2;
37
- /** Maximum supported embedding dimensions */
38
- readonly MAX_DIMENSIONS: 4096;
39
- /** Maximum items in a single batch upsert */
40
- readonly MAX_BATCH_SIZE: 500;
41
- };
42
- /**
43
- * A stored embedding record with metadata.
44
- */
45
- export interface VectorRecord {
46
- /** Unique identifier (typically document ID) */
47
- id: string;
48
- /** The embedding vector as a Float64 array */
49
- embedding: number[];
50
- /** Optional metadata associated with the embedding */
51
- metadata: Record<string, unknown>;
52
- /** ISO timestamp of when the embedding was stored */
53
- createdAt: string;
54
- /** ISO timestamp of last update */
55
- updatedAt: string;
56
- }
57
- /**
58
- * A search result with cosine similarity score.
59
- */
60
- export interface VectorSearchResult {
61
- /** Unique identifier */
62
- id: string;
63
- /** Cosine similarity score (higher is more similar) */
64
- score: number;
65
- /** Associated metadata */
66
- metadata: Record<string, unknown>;
67
- }
68
- /**
69
- * Convert a number array to a Float32Array Buffer for efficient BLOB storage.
70
- *
71
- * @param embedding - The embedding vector
72
- * @returns Buffer containing the Float32Array binary data
73
- */
74
- export declare function embeddingToBlob(embedding: number[]): Buffer;
75
- /**
76
- * Convert a BLOB Buffer back to a number array.
77
- *
78
- * @param blob - Buffer containing Float32Array binary data
79
- * @returns The embedding as a number array
80
- */
81
- export declare function blobToEmbedding(blob: Buffer): number[];
82
- /**
83
- * Compute cosine similarity between two vectors.
84
- *
85
- * @param a - First vector
86
- * @param b - Second vector
87
- * @returns Cosine similarity in range [-1, 1], or 0 if vectors are incompatible
88
- */
89
- export declare function cosineSimilarity(a: number[], b: number[]): number;
90
- /**
91
- * Validate an embedding vector for storage. Rejects empty arrays, values
92
- * that are not finite numbers (NaN, Infinity), and dimensions exceeding
93
- * the maximum.
94
- *
95
- * @param embedding - The embedding to validate
96
- * @throws Error if the embedding is invalid
97
- */
98
- export declare function validateEmbedding(embedding: number[]): void;
99
- /**
100
- * VectorStoreService provides local SQLite-based vector storage with optional
101
- * native KNN search via the sqlite-vec extension.
102
- *
103
- * When sqlite-vec is available, search uses a `vec0` virtual table with cosine
104
- * distance metric for hardware-accelerated nearest-neighbor queries. When it is
105
- * not available, search falls back to JavaScript cosine similarity (fully
106
- * portable, no native extension required).
107
- *
108
- * Each scope (global / project) gets its own database file so project data
109
- * stays isolated and portable.
110
- *
111
- * @example
112
- * ```typescript
113
- * const store = VectorStoreService.getInstance();
114
- * store.upsert('doc-123', embedding, { title: 'My Doc' }, 'global');
115
- * const results = store.search(queryEmbedding, 'global');
116
- * console.log(store.isVecEnabled('global')); // true if sqlite-vec loaded
117
- * ```
118
- */
119
- export declare class VectorStoreService {
120
- private static instance;
121
- private readonly logger;
122
- /** Cache of open database connections by resolved db path */
123
- private readonly databases;
124
- private constructor();
125
- /**
126
- * Get the singleton instance.
127
- *
128
- * @returns VectorStoreService instance
129
- */
130
- static getInstance(): VectorStoreService;
131
- /**
132
- * Reset the singleton and close all open databases (for testing).
133
- */
134
- static resetInstance(): void;
135
- /**
136
- * Resolve the database file path for a given scope.
137
- *
138
- * @param scope - 'global' or 'project'
139
- * @param projectPath - Required when scope is 'project'
140
- * @returns Absolute path to the SQLite database file
141
- * @throws Error if projectPath is missing for project scope
142
- */
143
- private dbPath;
144
- /**
145
- * Check whether the sqlite-vec native KNN search is available for a scope.
146
- *
147
- * @param scope - Storage scope
148
- * @param projectPath - Required when scope is 'project'
149
- * @returns true if vec0 virtual table is active
150
- */
151
- isVecEnabled(scope: 'global' | 'project', projectPath?: string): boolean;
152
- /**
153
- * Get (or prepare + cache) a statement for the given database state.
154
- *
155
- * @param state - Database state to prepare on
156
- * @param key - Unique cache key
157
- * @param sql - SQL to prepare if not yet cached
158
- * @returns A prepared Statement
159
- */
160
- private getStmt;
161
- /**
162
- * Open or retrieve a cached database connection. Creates the parent
163
- * directory, schema, and vec0 table (if sqlite-vec is available) on first
164
- * access. Handles automatic migration from v1 databases.
165
- *
166
- * @param scope - Document scope
167
- * @param projectPath - Project path for project-scoped databases
168
- * @returns Internal DatabaseState
169
- */
170
- private getDbState;
171
- /**
172
- * Migrate database schema to v2.
173
- * - Creates vec_config table for tracking schema version and dimensions
174
- * - Adds dimensions column if missing
175
- * - Converts JSON TEXT embeddings to BLOB if needed
176
- * - Creates vec0 virtual table if sqlite-vec is available and dimensions are known
177
- *
178
- * @param db - The database to migrate
179
- * @param vecEnabled - Whether sqlite-vec extension is loaded
180
- */
181
- private migrateSchema;
182
- /**
183
- * Create the vec0 virtual table if it doesn't already exist and dimensions
184
- * are known. Returns true if the table is ready for use.
185
- *
186
- * @param db - The database
187
- * @param dimensions - Explicit dimensions; if omitted, reads from vec_config
188
- * @returns true if vec0 table exists and is ready
189
- */
190
- private ensureVecTable;
191
- /**
192
- * Copy all existing embeddings matching the target dimensions into the vec0
193
- * virtual table.
194
- *
195
- * @param db - The database
196
- * @param dimensions - Target embedding dimensions
197
- */
198
- private backfillVecTable;
199
- /**
200
- * Read the stored embedding dimensions from the vec_config table.
201
- *
202
- * @param db - The database
203
- * @returns Stored dimensions, or null if not yet determined
204
- */
205
- private getStoredDimensions;
206
- /**
207
- * Close all open database connections and clear caches.
208
- */
209
- closeAll(): void;
210
- /**
211
- * Store or update an embedding for a document.
212
- *
213
- * @param id - Document identifier
214
- * @param embedding - The embedding vector (array of numbers)
215
- * @param metadata - Optional metadata to associate with the embedding
216
- * @param scope - Storage scope ('global' or 'project')
217
- * @param projectPath - Required when scope is 'project'
218
- * @throws Error if id is empty, embedding is invalid, metadata exceeds size,
219
- * or dimensions don't match previously stored embeddings
220
- */
221
- upsert(id: string, embedding: number[], metadata: Record<string, unknown>, scope: 'global' | 'project', projectPath?: string): void;
222
- /**
223
- * Sync a single embedding to the vec0 virtual table.
224
- * Uses CAST(? AS INTEGER) for rowid because sqlite-vec's vec0 virtual
225
- * table does not accept JS number params directly for primary keys.
226
- *
227
- * @param state - Database state
228
- * @param id - Document identifier
229
- * @param blob - Embedding as a Float32Array buffer
230
- */
231
- private syncToVec;
232
- /**
233
- * Batch upsert multiple embeddings in a single transaction. Significantly
234
- * faster than individual upserts for bulk imports.
235
- *
236
- * @param items - Array of { id, embedding, metadata } objects
237
- * @param scope - Storage scope
238
- * @param projectPath - Required when scope is 'project'
239
- * @returns Count of succeeded and failed inserts
240
- * @throws Error if batch size exceeds MAX_BATCH_SIZE
241
- */
242
- batchUpsert(items: Array<{
243
- id: string;
244
- embedding: number[];
245
- metadata: Record<string, unknown>;
246
- }>, scope: 'global' | 'project', projectPath?: string): {
247
- succeeded: number;
248
- failed: number;
249
- };
250
- /**
251
- * Retrieve a stored embedding by document ID.
252
- *
253
- * @param id - Document identifier
254
- * @param scope - Storage scope
255
- * @param projectPath - Required when scope is 'project'
256
- * @returns The vector record, or null if not found
257
- */
258
- get(id: string, scope: 'global' | 'project', projectPath?: string): VectorRecord | null;
259
- /**
260
- * Delete an embedding by document ID.
261
- *
262
- * @param id - Document identifier
263
- * @param scope - Storage scope
264
- * @param projectPath - Required when scope is 'project'
265
- * @returns True if a record was deleted, false if not found
266
- */
267
- delete(id: string, scope: 'global' | 'project', projectPath?: string): boolean;
268
- /**
269
- * Check whether an embedding exists for a given document ID.
270
- *
271
- * @param id - Document identifier
272
- * @param scope - Storage scope
273
- * @param projectPath - Required when scope is 'project'
274
- * @returns True if the embedding exists
275
- */
276
- has(id: string, scope: 'global' | 'project', projectPath?: string): boolean;
277
- /**
278
- * Return the total number of stored embeddings.
279
- *
280
- * @param scope - Storage scope
281
- * @param projectPath - Required when scope is 'project'
282
- * @returns Count of stored embeddings
283
- */
284
- count(scope: 'global' | 'project', projectPath?: string): number;
285
- /**
286
- * Search for the most similar embeddings. Uses native vec0 KNN search when
287
- * sqlite-vec is available, otherwise falls back to JavaScript cosine
288
- * similarity.
289
- *
290
- * @param queryEmbedding - The query embedding vector
291
- * @param scope - Storage scope
292
- * @param projectPath - Required when scope is 'project'
293
- * @param limit - Maximum number of results (default 10)
294
- * @param threshold - Minimum similarity threshold (default 0.1)
295
- * @returns Matching records sorted by descending similarity
296
- */
297
- search(queryEmbedding: number[], scope: 'global' | 'project', projectPath?: string, limit?: number, threshold?: number): VectorSearchResult[];
298
- /**
299
- * Native KNN search using sqlite-vec's vec0 virtual table with cosine
300
- * distance metric. Results are converted from cosine distance (0 = identical,
301
- * 1 = orthogonal) to cosine similarity (1 = identical, 0 = orthogonal).
302
- *
303
- * @param state - Database state
304
- * @param queryEmbedding - The query vector
305
- * @param limit - Max results
306
- * @param threshold - Minimum cosine similarity
307
- * @returns Sorted search results
308
- */
309
- private vecSearch;
310
- /**
311
- * JavaScript fallback search using cosine similarity on BLOB embeddings.
312
- * Used when sqlite-vec is not available.
313
- *
314
- * @param state - Database state
315
- * @param queryEmbedding - The query vector
316
- * @param limit - Max results
317
- * @param threshold - Minimum cosine similarity
318
- * @returns Sorted search results
319
- */
320
- private jsFallbackSearch;
321
- /**
322
- * Delete all embeddings from the store. Also resets the stored dimension
323
- * constraint so that subsequent inserts may use a different embedding width.
324
- *
325
- * @param scope - Storage scope
326
- * @param projectPath - Required when scope is 'project'
327
- * @returns Number of records deleted
328
- */
329
- clear(scope: 'global' | 'project', projectPath?: string): number;
330
- }
331
- //# sourceMappingURL=vector-store.service.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"vector-store.service.d.ts","sourceRoot":"","sources":["../../../../../../backend/src/services/memory/vector-store.service.ts"],"names":[],"mappings":"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"}