@steno-ai/engine 0.1.15 → 0.1.16

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 (232) hide show
  1. package/dist/adapters/storage.d.ts +29 -2
  2. package/dist/adapters/storage.d.ts.map +1 -1
  3. package/dist/extraction/pipeline.d.ts.map +1 -1
  4. package/dist/extraction/pipeline.js +23 -0
  5. package/dist/extraction/pipeline.js.map +1 -1
  6. package/dist/extraction/types.d.ts +2 -0
  7. package/dist/extraction/types.d.ts.map +1 -1
  8. package/dist/identity/index.d.ts +2 -0
  9. package/dist/identity/index.d.ts.map +1 -0
  10. package/dist/identity/index.js +2 -0
  11. package/dist/identity/index.js.map +1 -0
  12. package/dist/identity/resolver.d.ts +31 -0
  13. package/dist/identity/resolver.d.ts.map +1 -0
  14. package/dist/identity/resolver.js +122 -0
  15. package/dist/identity/resolver.js.map +1 -0
  16. package/dist/index.d.ts +1 -0
  17. package/dist/index.d.ts.map +1 -1
  18. package/dist/index.js +1 -0
  19. package/dist/index.js.map +1 -1
  20. package/dist/models/entity.d.ts +32 -0
  21. package/dist/models/entity.d.ts.map +1 -1
  22. package/dist/models/entity.js +11 -0
  23. package/dist/models/entity.js.map +1 -1
  24. package/dist/retrieval/graph-traversal.d.ts +4 -1
  25. package/dist/retrieval/graph-traversal.d.ts.map +1 -1
  26. package/dist/retrieval/graph-traversal.js +6 -3
  27. package/dist/retrieval/graph-traversal.js.map +1 -1
  28. package/dist/retrieval/search.d.ts.map +1 -1
  29. package/dist/retrieval/search.js +56 -3
  30. package/dist/retrieval/search.js.map +1 -1
  31. package/dist/retrieval/types.d.ts +1 -0
  32. package/dist/retrieval/types.d.ts.map +1 -1
  33. package/dist/retrieval/types.js.map +1 -1
  34. package/package.json +1 -1
  35. package/src/adapters/storage.ts +35 -2
  36. package/src/extraction/pipeline.ts +34 -0
  37. package/src/extraction/types.ts +2 -0
  38. package/src/identity/index.ts +1 -0
  39. package/src/identity/resolver.ts +149 -0
  40. package/src/index.ts +1 -0
  41. package/src/models/entity.ts +13 -0
  42. package/src/retrieval/graph-traversal.ts +7 -4
  43. package/src/retrieval/search.ts +58 -3
  44. package/src/retrieval/types.ts +1 -0
  45. package/src/adapters/cache.d.ts +0 -9
  46. package/src/adapters/cache.d.ts.map +0 -1
  47. package/src/adapters/cache.js +0 -2
  48. package/src/adapters/cache.js.map +0 -1
  49. package/src/adapters/embedding.d.ts +0 -7
  50. package/src/adapters/embedding.d.ts.map +0 -1
  51. package/src/adapters/embedding.js +0 -2
  52. package/src/adapters/embedding.js.map +0 -1
  53. package/src/adapters/llm.d.ts +0 -19
  54. package/src/adapters/llm.d.ts.map +0 -1
  55. package/src/adapters/llm.js +0 -2
  56. package/src/adapters/llm.js.map +0 -1
  57. package/src/adapters/perplexity-embedding.d.ts +0 -24
  58. package/src/adapters/perplexity-embedding.d.ts.map +0 -1
  59. package/src/adapters/perplexity-embedding.js +0 -78
  60. package/src/adapters/perplexity-embedding.js.map +0 -1
  61. package/src/adapters/storage.d.ts +0 -173
  62. package/src/adapters/storage.d.ts.map +0 -1
  63. package/src/adapters/storage.js +0 -2
  64. package/src/adapters/storage.js.map +0 -1
  65. package/src/config.d.ts +0 -296
  66. package/src/config.d.ts.map +0 -1
  67. package/src/config.js +0 -92
  68. package/src/config.js.map +0 -1
  69. package/src/extraction/contradiction.d.ts +0 -15
  70. package/src/extraction/contradiction.d.ts.map +0 -1
  71. package/src/extraction/contradiction.js +0 -23
  72. package/src/extraction/contradiction.js.map +0 -1
  73. package/src/extraction/cross-linker.d.ts +0 -23
  74. package/src/extraction/cross-linker.d.ts.map +0 -1
  75. package/src/extraction/cross-linker.js +0 -146
  76. package/src/extraction/cross-linker.js.map +0 -1
  77. package/src/extraction/dedup.d.ts +0 -12
  78. package/src/extraction/dedup.d.ts.map +0 -1
  79. package/src/extraction/dedup.js +0 -93
  80. package/src/extraction/dedup.js.map +0 -1
  81. package/src/extraction/entity-extractor.d.ts +0 -30
  82. package/src/extraction/entity-extractor.d.ts.map +0 -1
  83. package/src/extraction/entity-extractor.js +0 -145
  84. package/src/extraction/entity-extractor.js.map +0 -1
  85. package/src/extraction/hasher.d.ts +0 -5
  86. package/src/extraction/hasher.d.ts.map +0 -1
  87. package/src/extraction/hasher.js +0 -8
  88. package/src/extraction/hasher.js.map +0 -1
  89. package/src/extraction/heuristic.d.ts +0 -3
  90. package/src/extraction/heuristic.d.ts.map +0 -1
  91. package/src/extraction/heuristic.js +0 -282
  92. package/src/extraction/heuristic.js.map +0 -1
  93. package/src/extraction/llm-extractor.d.ts +0 -23
  94. package/src/extraction/llm-extractor.d.ts.map +0 -1
  95. package/src/extraction/llm-extractor.js +0 -240
  96. package/src/extraction/llm-extractor.js.map +0 -1
  97. package/src/extraction/pipeline.d.ts +0 -30
  98. package/src/extraction/pipeline.d.ts.map +0 -1
  99. package/src/extraction/pipeline.js +0 -413
  100. package/src/extraction/pipeline.js.map +0 -1
  101. package/src/extraction/prompts.d.ts +0 -28
  102. package/src/extraction/prompts.d.ts.map +0 -1
  103. package/src/extraction/prompts.js +0 -205
  104. package/src/extraction/prompts.js.map +0 -1
  105. package/src/extraction/sliding-window.d.ts +0 -41
  106. package/src/extraction/sliding-window.d.ts.map +0 -1
  107. package/src/extraction/sliding-window.js +0 -84
  108. package/src/extraction/sliding-window.js.map +0 -1
  109. package/src/extraction/types.d.ts +0 -80
  110. package/src/extraction/types.d.ts.map +0 -1
  111. package/src/extraction/types.js +0 -2
  112. package/src/extraction/types.js.map +0 -1
  113. package/src/feedback/tracker.d.ts +0 -25
  114. package/src/feedback/tracker.d.ts.map +0 -1
  115. package/src/feedback/tracker.js +0 -90
  116. package/src/feedback/tracker.js.map +0 -1
  117. package/src/models/api-key.d.ts +0 -54
  118. package/src/models/api-key.d.ts.map +0 -1
  119. package/src/models/api-key.js +0 -21
  120. package/src/models/api-key.js.map +0 -1
  121. package/src/models/edge.d.ts +0 -78
  122. package/src/models/edge.d.ts.map +0 -1
  123. package/src/models/edge.js +0 -29
  124. package/src/models/edge.js.map +0 -1
  125. package/src/models/entity.d.ts +0 -60
  126. package/src/models/entity.d.ts.map +0 -1
  127. package/src/models/entity.js +0 -22
  128. package/src/models/entity.js.map +0 -1
  129. package/src/models/extraction.d.ts +0 -111
  130. package/src/models/extraction.d.ts.map +0 -1
  131. package/src/models/extraction.js +0 -40
  132. package/src/models/extraction.js.map +0 -1
  133. package/src/models/fact-entity.d.ts +0 -33
  134. package/src/models/fact-entity.d.ts.map +0 -1
  135. package/src/models/fact-entity.js +0 -14
  136. package/src/models/fact-entity.js.map +0 -1
  137. package/src/models/fact.d.ts +0 -191
  138. package/src/models/fact.d.ts.map +0 -1
  139. package/src/models/fact.js +0 -72
  140. package/src/models/fact.js.map +0 -1
  141. package/src/models/index.d.ts +0 -13
  142. package/src/models/index.d.ts.map +0 -1
  143. package/src/models/index.js +0 -13
  144. package/src/models/index.js.map +0 -1
  145. package/src/models/memory-access.d.ts +0 -89
  146. package/src/models/memory-access.d.ts.map +0 -1
  147. package/src/models/memory-access.js +0 -33
  148. package/src/models/memory-access.js.map +0 -1
  149. package/src/models/session.d.ts +0 -60
  150. package/src/models/session.d.ts.map +0 -1
  151. package/src/models/session.js +0 -23
  152. package/src/models/session.js.map +0 -1
  153. package/src/models/tenant.d.ts +0 -448
  154. package/src/models/tenant.d.ts.map +0 -1
  155. package/src/models/tenant.js +0 -23
  156. package/src/models/tenant.js.map +0 -1
  157. package/src/models/trigger.d.ts +0 -87
  158. package/src/models/trigger.d.ts.map +0 -1
  159. package/src/models/trigger.js +0 -41
  160. package/src/models/trigger.js.map +0 -1
  161. package/src/models/usage-record.d.ts +0 -37
  162. package/src/models/usage-record.d.ts.map +0 -1
  163. package/src/models/usage-record.js +0 -14
  164. package/src/models/usage-record.js.map +0 -1
  165. package/src/models/webhook.d.ts +0 -50
  166. package/src/models/webhook.d.ts.map +0 -1
  167. package/src/models/webhook.js +0 -25
  168. package/src/models/webhook.js.map +0 -1
  169. package/src/retrieval/compound-search.d.ts +0 -13
  170. package/src/retrieval/compound-search.d.ts.map +0 -1
  171. package/src/retrieval/compound-search.js +0 -87
  172. package/src/retrieval/compound-search.js.map +0 -1
  173. package/src/retrieval/contradiction-surfacer.d.ts +0 -18
  174. package/src/retrieval/contradiction-surfacer.d.ts.map +0 -1
  175. package/src/retrieval/contradiction-surfacer.js +0 -64
  176. package/src/retrieval/contradiction-surfacer.js.map +0 -1
  177. package/src/retrieval/embedding-cache.d.ts +0 -17
  178. package/src/retrieval/embedding-cache.d.ts.map +0 -1
  179. package/src/retrieval/embedding-cache.js +0 -56
  180. package/src/retrieval/embedding-cache.js.map +0 -1
  181. package/src/retrieval/fusion.d.ts +0 -27
  182. package/src/retrieval/fusion.d.ts.map +0 -1
  183. package/src/retrieval/fusion.js +0 -87
  184. package/src/retrieval/fusion.js.map +0 -1
  185. package/src/retrieval/graph-traversal.d.ts +0 -29
  186. package/src/retrieval/graph-traversal.d.ts.map +0 -1
  187. package/src/retrieval/graph-traversal.js +0 -208
  188. package/src/retrieval/graph-traversal.js.map +0 -1
  189. package/src/retrieval/query-expansion.d.ts +0 -20
  190. package/src/retrieval/query-expansion.d.ts.map +0 -1
  191. package/src/retrieval/query-expansion.js +0 -76
  192. package/src/retrieval/query-expansion.js.map +0 -1
  193. package/src/retrieval/reranker.d.ts +0 -15
  194. package/src/retrieval/reranker.d.ts.map +0 -1
  195. package/src/retrieval/reranker.js +0 -47
  196. package/src/retrieval/reranker.js.map +0 -1
  197. package/src/retrieval/salience-scorer.d.ts +0 -15
  198. package/src/retrieval/salience-scorer.d.ts.map +0 -1
  199. package/src/retrieval/salience-scorer.js +0 -41
  200. package/src/retrieval/salience-scorer.js.map +0 -1
  201. package/src/retrieval/search.d.ts +0 -21
  202. package/src/retrieval/search.d.ts.map +0 -1
  203. package/src/retrieval/search.js +0 -228
  204. package/src/retrieval/search.js.map +0 -1
  205. package/src/retrieval/temporal-scorer.d.ts +0 -18
  206. package/src/retrieval/temporal-scorer.d.ts.map +0 -1
  207. package/src/retrieval/temporal-scorer.js +0 -106
  208. package/src/retrieval/temporal-scorer.js.map +0 -1
  209. package/src/retrieval/trigger-matcher.d.ts +0 -18
  210. package/src/retrieval/trigger-matcher.d.ts.map +0 -1
  211. package/src/retrieval/trigger-matcher.js +0 -134
  212. package/src/retrieval/trigger-matcher.js.map +0 -1
  213. package/src/retrieval/types.d.ts +0 -70
  214. package/src/retrieval/types.d.ts.map +0 -1
  215. package/src/retrieval/types.js +0 -9
  216. package/src/retrieval/types.js.map +0 -1
  217. package/src/retrieval/vector-search.d.ts +0 -5
  218. package/src/retrieval/vector-search.d.ts.map +0 -1
  219. package/src/retrieval/vector-search.js +0 -24
  220. package/src/retrieval/vector-search.js.map +0 -1
  221. package/src/salience/decay.d.ts +0 -9
  222. package/src/salience/decay.d.ts.map +0 -1
  223. package/src/salience/decay.js +0 -15
  224. package/src/salience/decay.js.map +0 -1
  225. package/src/scratchpad/scratchpad.d.ts +0 -23
  226. package/src/scratchpad/scratchpad.d.ts.map +0 -1
  227. package/src/scratchpad/scratchpad.js +0 -137
  228. package/src/scratchpad/scratchpad.js.map +0 -1
  229. package/src/sessions/manager.d.ts +0 -11
  230. package/src/sessions/manager.d.ts.map +0 -1
  231. package/src/sessions/manager.js +0 -63
  232. package/src/sessions/manager.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"graph-traversal.js","sourceRoot":"","sources":["../../src/retrieval/graph-traversal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph-traversal.js","sourceRoot":"","sources":["../../src/retrieval/graph-traversal.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/retrieval/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAc1F,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC,CA8OzB"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/retrieval/search.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,aAAa,EAAa,MAAM,YAAY,CAAC;AAc1F,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,cAAc,CAAC;IACxB,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,CAAC,EAAE,YAAY,CAAC;IACrB,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,WAAW,CAAC,EAAE,UAAU,CAAC;IACzB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,6EAA6E;IAC7E,YAAY,CAAC,EAAE,UAAU,CAAC;CAC3B;AAED,wBAAsB,MAAM,CAC1B,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,cAAc,CAAC,CAqSzB"}
@@ -25,17 +25,70 @@ export async function search(config, options) {
25
25
  const isFast = options.fast === true;
26
26
  // 1. Run retrieval signals
27
27
  const t0 = Date.now();
28
+ // Determine whether to use multi-scope search
29
+ const useMultiScope = options.scopeIds && options.scopeIds.length > 0;
28
30
  const tCompound = Date.now();
29
- const compoundPromise = compoundSearchSignal(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier).catch(() => ({ vectorCandidates: [], keywordCandidates: [] }));
31
+ let compoundPromise;
32
+ if (useMultiScope) {
33
+ // Multi-scope path: run vectorSearchMultiScope + keywordSearchMultiScope in parallel
34
+ compoundPromise = (async () => {
35
+ const embedding = await effectiveEmbedding.embed(options.query);
36
+ const [vectorResults, keywordResults] = await Promise.all([
37
+ config.storage.vectorSearchMultiScope({
38
+ embedding,
39
+ tenantId: options.tenantId,
40
+ scope: options.scope,
41
+ scopeIds: options.scopeIds,
42
+ limit: limit * fetchMultiplier,
43
+ asOf: options.temporalFilter?.asOf,
44
+ }).catch(() => []),
45
+ config.storage.keywordSearchMultiScope({
46
+ query: options.query,
47
+ tenantId: options.tenantId,
48
+ scope: options.scope,
49
+ scopeIds: options.scopeIds,
50
+ limit: limit * fetchMultiplier,
51
+ asOf: options.temporalFilter?.asOf,
52
+ }).catch(() => []),
53
+ ]);
54
+ const vectorCandidates = vectorResults.map(r => ({
55
+ fact: r.fact,
56
+ vectorScore: r.similarity,
57
+ keywordScore: 0,
58
+ graphScore: 0,
59
+ recencyScore: 0,
60
+ salienceScore: 0,
61
+ temporalScore: 0,
62
+ source: 'vector',
63
+ }));
64
+ const keywordCandidates = keywordResults.map(r => ({
65
+ fact: r.fact,
66
+ vectorScore: 0,
67
+ keywordScore: r.rankScore,
68
+ graphScore: 0,
69
+ recencyScore: 0,
70
+ salienceScore: 0,
71
+ temporalScore: 0,
72
+ source: 'keyword',
73
+ }));
74
+ return { vectorCandidates, keywordCandidates };
75
+ })().catch(() => ({ vectorCandidates: [], keywordCandidates: [] }));
76
+ }
77
+ else {
78
+ // Single-scope path (original behavior)
79
+ compoundPromise = compoundSearchSignal(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier).catch(() => ({ vectorCandidates: [], keywordCandidates: [] }));
80
+ }
30
81
  let graphPromise = null;
31
82
  let triggerPromise = null;
83
+ // Graph and trigger searches use single scope (scopeId or first of scopeIds)
84
+ const effectiveScopeId = useMultiScope ? options.scopeIds[0] : options.scopeId;
32
85
  if (!isFast) {
33
86
  const tGraph = Date.now();
34
- graphPromise = graphSearch(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier, { maxDepth: config.graphMaxDepth, maxEntities: config.graphMaxEntities, asOf: options.temporalFilter?.asOf })
87
+ graphPromise = graphSearch(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, effectiveScopeId, limit * fetchMultiplier, { maxDepth: config.graphMaxDepth, maxEntities: config.graphMaxEntities, asOf: options.temporalFilter?.asOf })
35
88
  .then(r => { console.error(`[steno-search] graph: ${Date.now() - tGraph}ms (${Array.isArray(r) ? r.length : 0} candidates)`); return r; })
36
89
  .catch(() => []);
37
90
  const tTrigger = Date.now();
38
- triggerPromise = matchTriggers(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId)
91
+ triggerPromise = matchTriggers(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, effectiveScopeId)
39
92
  .then(r => { console.error(`[steno-search] trigger: ${Date.now() - tTrigger}ms`); return r; })
40
93
  .catch(() => ({ candidates: [], triggersMatched: [] }));
41
94
  }
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/retrieval/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/retrieval/search.ts"],"names":[],"mappings":"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"}
@@ -14,6 +14,7 @@ export interface SearchOptions {
14
14
  weights?: FusionWeights;
15
15
  tokenBudget?: number;
16
16
  fast?: boolean;
17
+ scopeIds?: string[];
17
18
  }
18
19
  /** Configurable fusion weights (should sum to 1.0 — normalized if not) */
19
20
  export interface FusionWeights {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/retrieval/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE7D,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC;IACF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,IAAI,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,KAAK,EAAE,IAAI,EAAE,CAAC;KACf,CAAC;IACF,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qDAAqD;AACrD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,sBAAsB,EAAE,aAOpC,CAAC;AAEF;iEACiE;AACjE,eAAO,MAAM,uBAAuB,EAAE,aAOrC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/retrieval/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAE7D,2CAA2C;AAC3C,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,cAAc,CAAC,EAAE;QACf,IAAI,CAAC,EAAE,IAAI,CAAC;KACb,CAAC;IACF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,0EAA0E;AAC1E,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,oDAAoD;AACpD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,IAAI,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE;QACP,WAAW,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE,MAAM,CAAC;QACrB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,CAAC;KACvB,CAAC;IACF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE;QACd,WAAW,EAAE,IAAI,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;IACF,KAAK,CAAC,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,CAAC;QACnB,KAAK,EAAE,IAAI,EAAE,CAAC;KACf,CAAC;IACF,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC;CAClB;AAED,2BAA2B;AAC3B,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,YAAY,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,qDAAqD;AACrD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,aAAa,EAAE,MAAM,CAAC;IACtB,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,OAAO,GAAG,SAAS,CAAC;IACnD,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,sBAAsB,EAAE,aAOpC,CAAC;AAEF;iEACiE;AACjE,eAAO,MAAM,uBAAuB,EAAE,aAOrC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/retrieval/types.ts"],"names":[],"mappings":"AA2EA,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF;iEACiE;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAkB;IACpD,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;CACf,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/retrieval/types.ts"],"names":[],"mappings":"AA4EA,MAAM,CAAC,MAAM,sBAAsB,GAAkB;IACnD,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;CACf,CAAC;AAEF;iEACiE;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAkB;IACpD,MAAM,EAAE,IAAI;IACZ,OAAO,EAAE,IAAI;IACb,KAAK,EAAE,IAAI;IACX,OAAO,EAAE,IAAI;IACb,QAAQ,EAAE,IAAI;IACd,QAAQ,EAAE,IAAI;CACf,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@steno-ai/engine",
3
- "version": "0.1.15",
3
+ "version": "0.1.16",
4
4
  "description": "Core memory engine — extraction, retrieval, knowledge graph",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -21,6 +21,7 @@ import type {
21
21
  Webhook,
22
22
  CreateWebhook,
23
23
  } from '../models/index.js';
24
+ import type { Alias } from '../models/entity.js';
24
25
 
25
26
  export interface PaginationOptions {
26
27
  limit: number;
@@ -80,6 +81,27 @@ export interface CompoundSearchResult {
80
81
  relevanceScore: number;
81
82
  }
82
83
 
84
+ export interface VectorSearchMultiScopeOptions {
85
+ embedding: number[];
86
+ tenantId: string;
87
+ scope: string;
88
+ scopeIds: string[];
89
+ limit: number;
90
+ minSimilarity?: number;
91
+ validOnly?: boolean;
92
+ asOf?: Date;
93
+ }
94
+
95
+ export interface KeywordSearchMultiScopeOptions {
96
+ query: string;
97
+ tenantId: string;
98
+ scope: string;
99
+ scopeIds: string[];
100
+ limit: number;
101
+ validOnly?: boolean;
102
+ asOf?: Date;
103
+ }
104
+
83
105
  export interface GraphTraversalOptions {
84
106
  tenantId: string;
85
107
  entityIds: string[];
@@ -124,8 +146,8 @@ export interface StorageAdapter {
124
146
  // Fact-Entity junction
125
147
  linkFactEntity(factId: string, entityId: string, role: string): Promise<void>;
126
148
  getEntitiesForFact(factId: string): Promise<Entity[]>;
127
- getFactsForEntity(tenantId: string, entityId: string, options: PaginationOptions): Promise<PaginatedResult<Fact>>;
128
- getFactsForEntities(tenantId: string, entityIds: string[], perEntityLimit: number): Promise<Array<{ entityId: string; fact: Fact }>>;
149
+ getFactsForEntity(tenantId: string, entityId: string, options: PaginationOptions, scope?: string, scopeId?: string): Promise<PaginatedResult<Fact>>;
150
+ getFactsForEntities(tenantId: string, entityIds: string[], perEntityLimit: number, scope?: string, scopeId?: string): Promise<Array<{ entityId: string; fact: Fact }>>;
129
151
 
130
152
  // Edges
131
153
  createEdge(edge: CreateEdge & { id: string }): Promise<Edge>;
@@ -188,6 +210,17 @@ export interface StorageAdapter {
188
210
  getWebhooksByEvent(tenantId: string, event: string): Promise<Webhook[]>;
189
211
  deleteWebhook(tenantId: string, id: string): Promise<void>;
190
212
 
213
+ // Multi-scope search
214
+ vectorSearchMultiScope(options: VectorSearchMultiScopeOptions): Promise<VectorSearchResult[]>;
215
+ keywordSearchMultiScope(options: KeywordSearchMultiScopeOptions): Promise<KeywordSearchResult[]>;
216
+
217
+ // Identity resolution aliases
218
+ createAlias(tenantId: string, primaryEntityId: string, aliasEntityId: string, confidence: number, reason: string): Promise<Alias>;
219
+ getAliasesForEntity(tenantId: string, entityId: string): Promise<Alias[]>;
220
+ getExpandedEntityIds(tenantId: string, entityId: string): Promise<string[]>;
221
+ confirmAlias(aliasId: string, confirmedBy: string): Promise<void>;
222
+ deleteAlias(aliasId: string): Promise<void>;
223
+
191
224
  // Health
192
225
  ping(): Promise<boolean>;
193
226
  }
@@ -332,6 +332,40 @@ async function executeExtraction(
332
332
  );
333
333
  entitiesCreated = newEntitiesCreated;
334
334
 
335
+ // Identity resolution — opt-in only
336
+ if (input.resolveIdentities) {
337
+ const { resolveIdentities: resolve } = await import('../identity/resolver.js');
338
+ type IdentityCandidate = import('../identity/resolver.js').IdentityCandidate;
339
+
340
+ const entityEntries = Array.from(entityIdMap.entries());
341
+ const entityCandidates: IdentityCandidate[] = [];
342
+
343
+ for (const [, entityId] of entityEntries) {
344
+ const entity = await config.storage.getEntity(input.tenantId, entityId);
345
+ if (entity) {
346
+ entityCandidates.push({
347
+ id: entity.id,
348
+ canonicalName: entity.canonicalName,
349
+ entityType: entity.entityType,
350
+ properties: entity.properties,
351
+ });
352
+ }
353
+ }
354
+
355
+ if (entityCandidates.length >= 2) {
356
+ const aliasCandidates = resolve(entityCandidates);
357
+ for (const candidate of aliasCandidates) {
358
+ await config.storage.createAlias(
359
+ input.tenantId,
360
+ candidate.primaryEntityId,
361
+ candidate.aliasEntityId,
362
+ candidate.confidence,
363
+ candidate.matchReason,
364
+ );
365
+ }
366
+ }
367
+ }
368
+
335
369
  // Collect the first persisted factId to anchor edges (edges reference a fact).
336
370
  let firstFactId: string | undefined;
337
371
 
@@ -65,6 +65,8 @@ export interface ExtractionInput {
65
65
  existingFacts?: Array<{ id: string; lineageId: string; content: string; embedding?: number[] }>;
66
66
  /** Source provider for provenance tracking — where did this data come from? */
67
67
  sourceProvider?: 'user_direct' | 'email' | 'calendar' | 'slack' | 'github' | 'linear' | 'jira' | 'code' | 'document';
68
+ /** Opt-in: run cross-scope identity resolution after entity creation */
69
+ resolveIdentities?: boolean;
68
70
  }
69
71
 
70
72
  /** Final output of the full pipeline */
@@ -0,0 +1 @@
1
+ export { resolveIdentities, type IdentityCandidate, type AliasCandidate } from './resolver.js';
@@ -0,0 +1,149 @@
1
+ export interface IdentityCandidate {
2
+ id: string;
3
+ canonicalName: string;
4
+ entityType: string;
5
+ properties: Record<string, unknown>;
6
+ }
7
+
8
+ export interface AliasCandidate {
9
+ primaryEntityId: string;
10
+ aliasEntityId: string;
11
+ confidence: number;
12
+ matchReason: 'email_match' | 'fuzzy_name' | 'temporal_cooccurrence' | 'manual';
13
+ }
14
+
15
+ /**
16
+ * Jaro-Winkler similarity algorithm.
17
+ * Returns a value between 0 (no similarity) and 1 (identical).
18
+ */
19
+ export function jaroWinkler(s1: string, s2: string): number {
20
+ if (s1 === s2) return 1.0;
21
+ if (s1.length === 0 || s2.length === 0) return 0.0;
22
+
23
+ const matchDistance = Math.floor(Math.max(s1.length, s2.length) / 2) - 1;
24
+
25
+ const s1Matches = new Array(s1.length).fill(false);
26
+ const s2Matches = new Array(s2.length).fill(false);
27
+
28
+ let matches = 0;
29
+ let transpositions = 0;
30
+
31
+ // Find matching characters
32
+ for (let i = 0; i < s1.length; i++) {
33
+ const start = Math.max(0, i - matchDistance);
34
+ const end = Math.min(i + matchDistance + 1, s2.length);
35
+
36
+ for (let j = start; j < end; j++) {
37
+ if (s2Matches[j] || s1[i] !== s2[j]) continue;
38
+ s1Matches[i] = true;
39
+ s2Matches[j] = true;
40
+ matches++;
41
+ break;
42
+ }
43
+ }
44
+
45
+ if (matches === 0) return 0.0;
46
+
47
+ // Count transpositions
48
+ let k = 0;
49
+ for (let i = 0; i < s1.length; i++) {
50
+ if (!s1Matches[i]) continue;
51
+ while (!s2Matches[k]) k++;
52
+ if (s1[i] !== s2[k]) transpositions++;
53
+ k++;
54
+ }
55
+
56
+ const jaro =
57
+ (matches / s1.length + matches / s2.length + (matches - transpositions / 2) / matches) / 3;
58
+
59
+ // Winkler prefix bonus (up to 4 common prefix chars)
60
+ let prefix = 0;
61
+ for (let i = 0; i < Math.min(4, Math.min(s1.length, s2.length)); i++) {
62
+ if (s1[i] === s2[i]) prefix++;
63
+ else break;
64
+ }
65
+
66
+ return jaro + prefix * 0.1 * (1 - jaro);
67
+ }
68
+
69
+ /**
70
+ * Normalize a name for fuzzy comparison:
71
+ * lowercase and strip separators (. _ - @).
72
+ */
73
+ export function normalizeName(name: string): string {
74
+ return name.toLowerCase().replace(/[._\-@]/g, '');
75
+ }
76
+
77
+ /**
78
+ * Resolve identities across a list of entity candidates using a three-tier strategy:
79
+ * 1. Exact email match (confidence 1.0)
80
+ * 2. Fuzzy canonical name match via Jaro-Winkler (confidence 0.6–0.8)
81
+ *
82
+ * Returns alias pairs without duplicates.
83
+ */
84
+ export function resolveIdentities(entities: IdentityCandidate[]): AliasCandidate[] {
85
+ const aliases: AliasCandidate[] = [];
86
+ const seen = new Set<string>();
87
+
88
+ const addAlias = (
89
+ primaryEntityId: string,
90
+ aliasEntityId: string,
91
+ confidence: number,
92
+ matchReason: AliasCandidate['matchReason'],
93
+ ): void => {
94
+ const key = [primaryEntityId, aliasEntityId].sort().join(':');
95
+ if (seen.has(key)) return;
96
+ seen.add(key);
97
+ aliases.push({ primaryEntityId, aliasEntityId, confidence, matchReason });
98
+ };
99
+
100
+ // Tier 1: Email match (confidence 1.0)
101
+ const emailGroups = new Map<string, IdentityCandidate[]>();
102
+ for (const entity of entities) {
103
+ const email = entity.properties['email'];
104
+ if (typeof email !== 'string' || email.trim() === '') continue;
105
+ const normalizedEmail = email.toLowerCase();
106
+ const group = emailGroups.get(normalizedEmail) ?? [];
107
+ group.push(entity);
108
+ emailGroups.set(normalizedEmail, group);
109
+ }
110
+
111
+ for (const group of emailGroups.values()) {
112
+ if (group.length < 2) continue;
113
+ const primary = group[0]!;
114
+ for (let i = 1; i < group.length; i++) {
115
+ addAlias(primary.id, group[i]!.id, 1.0, 'email_match');
116
+ }
117
+ }
118
+
119
+ // Tier 2: Fuzzy name match (confidence 0.6–0.8)
120
+ // Threshold: Jaro-Winkler >= 0.85, same entity type required
121
+ const JARO_WINKLER_THRESHOLD = 0.85;
122
+
123
+ for (let i = 0; i < entities.length; i++) {
124
+ for (let j = i + 1; j < entities.length; j++) {
125
+ const a = entities[i]!;
126
+ const b = entities[j]!;
127
+
128
+ // Must be same entity type
129
+ if (a.entityType !== b.entityType) continue;
130
+
131
+ // Skip if already aliased
132
+ const key = [a.id, b.id].sort().join(':');
133
+ if (seen.has(key)) continue;
134
+
135
+ const normA = normalizeName(a.canonicalName);
136
+ const normB = normalizeName(b.canonicalName);
137
+ const similarity = jaroWinkler(normA, normB);
138
+
139
+ if (similarity >= JARO_WINKLER_THRESHOLD) {
140
+ // Map similarity [0.85, 1.0] → confidence [0.6, 0.8]
141
+ const confidence = 0.6 + ((similarity - 0.85) / 0.15) * 0.2;
142
+ const clampedConfidence = Math.min(0.8, Math.max(0.6, confidence));
143
+ addAlias(a.id, b.id, clampedConfidence, 'fuzzy_name');
144
+ }
145
+ }
146
+ }
147
+
148
+ return aliases;
149
+ }
package/src/index.ts CHANGED
@@ -10,3 +10,4 @@ export * from './sessions/index.js';
10
10
  export * from './feedback/index.js';
11
11
  export * from './profiles/index.js';
12
12
  export * from './scratchpad/index.js';
13
+ export * from './identity/index.js';
@@ -16,6 +16,19 @@ export const EntitySchema = z.object({
16
16
 
17
17
  export type Entity = z.infer<typeof EntitySchema>;
18
18
 
19
+ export const AliasSchema = z.object({
20
+ id: z.string().uuid(),
21
+ tenantId: z.string().uuid(),
22
+ primaryEntityId: z.string().uuid(),
23
+ aliasEntityId: z.string().uuid(),
24
+ confidence: z.number().min(0).max(1),
25
+ matchReason: z.enum(['email_match', 'fuzzy_name', 'temporal_cooccurrence', 'manual']),
26
+ confirmedBy: z.string().nullable(),
27
+ confirmedAt: z.coerce.date().nullable(),
28
+ createdAt: z.coerce.date(),
29
+ });
30
+ export type Alias = z.infer<typeof AliasSchema>;
31
+
19
32
  export const CreateEntitySchema = z.object({
20
33
  tenantId: z.string().uuid(),
21
34
  name: z.string().min(1).max(500),
@@ -41,14 +41,17 @@ export function tokenizeQuery(query: string): string[] {
41
41
  * - 1-hop = 0.5
42
42
  * - 2-hop = 0.25
43
43
  * - 3-hop = 0.125
44
+ *
45
+ * Note: Entity lookups are tenant-scoped.
46
+ * Fact retrieval is scope-filtered to prevent cross-user data leakage.
44
47
  */
45
48
  export async function graphSearch(
46
49
  storage: StorageAdapter,
47
50
  embedding: EmbeddingAdapter,
48
51
  query: string,
49
52
  tenantId: string,
50
- _scope: string,
51
- _scopeId: string,
53
+ scope: string,
54
+ scopeId: string,
52
55
  limit: number,
53
56
  config?: Partial<GraphSearchConfig>,
54
57
  ): Promise<Candidate[]> {
@@ -183,7 +186,7 @@ export async function graphSearch(
183
186
  // Single query: get all facts linked to any of these entities
184
187
  try {
185
188
  const batchResult = await storage.getFactsForEntities(
186
- tenantId, entityIds, PER_ENTITY_LIMIT
189
+ tenantId, entityIds, PER_ENTITY_LIMIT, scope, scopeId
187
190
  );
188
191
 
189
192
  for (const { entityId, fact } of batchResult) {
@@ -214,7 +217,7 @@ export async function graphSearch(
214
217
  const hopDepth = entityHopMap.get(entity.id) ?? maxDepth;
215
218
  const graphScore = 1 / Math.pow(2, hopDepth);
216
219
  try {
217
- const factsResult = await storage.getFactsForEntity(tenantId, entity.id, { limit: 3 });
220
+ const factsResult = await storage.getFactsForEntity(tenantId, entity.id, { limit: 3 }, scope, scopeId);
218
221
  for (const fact of factsResult.data) {
219
222
  if (!candidateMap.has(fact.id)) {
220
223
  candidateMap.set(fact.id, {
@@ -55,19 +55,74 @@ export async function search(
55
55
  // 1. Run retrieval signals
56
56
  const t0 = Date.now();
57
57
 
58
+ // Determine whether to use multi-scope search
59
+ const useMultiScope = options.scopeIds && options.scopeIds.length > 0;
60
+
58
61
  const tCompound = Date.now();
59
- const compoundPromise = compoundSearchSignal(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier).catch(() => ({ vectorCandidates: [] as Candidate[], keywordCandidates: [] as Candidate[] }));
62
+ let compoundPromise: Promise<{ vectorCandidates: Candidate[]; keywordCandidates: Candidate[] }>;
63
+
64
+ if (useMultiScope) {
65
+ // Multi-scope path: run vectorSearchMultiScope + keywordSearchMultiScope in parallel
66
+ compoundPromise = (async () => {
67
+ const embedding = await effectiveEmbedding.embed(options.query);
68
+ const [vectorResults, keywordResults] = await Promise.all([
69
+ config.storage.vectorSearchMultiScope({
70
+ embedding,
71
+ tenantId: options.tenantId,
72
+ scope: options.scope,
73
+ scopeIds: options.scopeIds!,
74
+ limit: limit * fetchMultiplier,
75
+ asOf: options.temporalFilter?.asOf,
76
+ }).catch(() => [] as import('../adapters/storage.js').VectorSearchResult[]),
77
+ config.storage.keywordSearchMultiScope({
78
+ query: options.query,
79
+ tenantId: options.tenantId,
80
+ scope: options.scope,
81
+ scopeIds: options.scopeIds!,
82
+ limit: limit * fetchMultiplier,
83
+ asOf: options.temporalFilter?.asOf,
84
+ }).catch(() => [] as import('../adapters/storage.js').KeywordSearchResult[]),
85
+ ]);
86
+ const vectorCandidates: Candidate[] = vectorResults.map(r => ({
87
+ fact: r.fact,
88
+ vectorScore: r.similarity,
89
+ keywordScore: 0,
90
+ graphScore: 0,
91
+ recencyScore: 0,
92
+ salienceScore: 0,
93
+ temporalScore: 0,
94
+ source: 'vector' as const,
95
+ }));
96
+ const keywordCandidates: Candidate[] = keywordResults.map(r => ({
97
+ fact: r.fact,
98
+ vectorScore: 0,
99
+ keywordScore: r.rankScore,
100
+ graphScore: 0,
101
+ recencyScore: 0,
102
+ salienceScore: 0,
103
+ temporalScore: 0,
104
+ source: 'keyword' as const,
105
+ }));
106
+ return { vectorCandidates, keywordCandidates };
107
+ })().catch(() => ({ vectorCandidates: [] as Candidate[], keywordCandidates: [] as Candidate[] }));
108
+ } else {
109
+ // Single-scope path (original behavior)
110
+ compoundPromise = compoundSearchSignal(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier).catch(() => ({ vectorCandidates: [] as Candidate[], keywordCandidates: [] as Candidate[] }));
111
+ }
60
112
 
61
113
  let graphPromise: Promise<Candidate[]> | null = null;
62
114
  let triggerPromise: Promise<{ candidates: Candidate[]; triggersMatched: string[] }> | null = null;
63
115
 
116
+ // Graph and trigger searches use single scope (scopeId or first of scopeIds)
117
+ const effectiveScopeId = useMultiScope ? options.scopeIds![0]! : options.scopeId;
118
+
64
119
  if (!isFast) {
65
120
  const tGraph = Date.now();
66
- graphPromise = graphSearch(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId, limit * fetchMultiplier, { maxDepth: config.graphMaxDepth, maxEntities: config.graphMaxEntities, asOf: options.temporalFilter?.asOf })
121
+ graphPromise = graphSearch(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, effectiveScopeId, limit * fetchMultiplier, { maxDepth: config.graphMaxDepth, maxEntities: config.graphMaxEntities, asOf: options.temporalFilter?.asOf })
67
122
  .then(r => { console.error(`[steno-search] graph: ${Date.now() - tGraph}ms (${Array.isArray(r) ? r.length : 0} candidates)`); return r; })
68
123
  .catch(() => [] as Candidate[]);
69
124
  const tTrigger = Date.now();
70
- triggerPromise = matchTriggers(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, options.scopeId)
125
+ triggerPromise = matchTriggers(config.storage, effectiveEmbedding, options.query, options.tenantId, options.scope, effectiveScopeId)
71
126
  .then(r => { console.error(`[steno-search] trigger: ${Date.now() - tTrigger}ms`); return r; })
72
127
  .catch(() => ({ candidates: [] as Candidate[], triggersMatched: [] as string[] }));
73
128
  }
@@ -15,6 +15,7 @@ export interface SearchOptions {
15
15
  weights?: FusionWeights; // override default fusion weights
16
16
  tokenBudget?: number; // max estimated tokens for results (rough: chars/4). Trims lowest-scored results to fit.
17
17
  fast?: boolean; // skip graph traversal + reranking for <300ms latency
18
+ scopeIds?: string[]; // when present, query across multiple scopeIds instead of a single one
18
19
  }
19
20
 
20
21
  /** Configurable fusion weights (should sum to 1.0 — normalized if not) */
@@ -1,9 +0,0 @@
1
- export interface CacheAdapter {
2
- get<T>(key: string): Promise<T | null>;
3
- set<T>(key: string, value: T, ttlSeconds?: number): Promise<void>;
4
- del(key: string): Promise<void>;
5
- incr(key: string): Promise<number>;
6
- expire(key: string, ttlSeconds: number): Promise<void>;
7
- ping(): Promise<boolean>;
8
- }
9
- //# sourceMappingURL=cache.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cache.d.ts","sourceRoot":"","sources":["cache.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,YAAY;IAC3B,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;IACvC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAClE,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACvD,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;CAC1B"}