codebase-context 1.4.1 → 1.5.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 (77) hide show
  1. package/README.md +193 -45
  2. package/dist/analyzers/generic/index.d.ts +0 -1
  3. package/dist/analyzers/generic/index.d.ts.map +1 -1
  4. package/dist/analyzers/generic/index.js +0 -13
  5. package/dist/analyzers/generic/index.js.map +1 -1
  6. package/dist/constants/codebase-context.d.ts +2 -0
  7. package/dist/constants/codebase-context.d.ts.map +1 -1
  8. package/dist/constants/codebase-context.js +2 -0
  9. package/dist/constants/codebase-context.js.map +1 -1
  10. package/dist/constants/git-patterns.d.ts +12 -0
  11. package/dist/constants/git-patterns.d.ts.map +1 -0
  12. package/dist/constants/git-patterns.js +11 -0
  13. package/dist/constants/git-patterns.js.map +1 -0
  14. package/dist/core/analyzer-registry.d.ts.map +1 -1
  15. package/dist/core/analyzer-registry.js +3 -1
  16. package/dist/core/analyzer-registry.js.map +1 -1
  17. package/dist/core/indexer.d.ts +2 -0
  18. package/dist/core/indexer.d.ts.map +1 -1
  19. package/dist/core/indexer.js +155 -20
  20. package/dist/core/indexer.js.map +1 -1
  21. package/dist/core/manifest.d.ts +39 -0
  22. package/dist/core/manifest.d.ts.map +1 -0
  23. package/dist/core/manifest.js +86 -0
  24. package/dist/core/manifest.js.map +1 -0
  25. package/dist/core/search-quality.d.ts +10 -0
  26. package/dist/core/search-quality.d.ts.map +1 -0
  27. package/dist/core/search-quality.js +64 -0
  28. package/dist/core/search-quality.js.map +1 -0
  29. package/dist/core/search.d.ts +16 -0
  30. package/dist/core/search.d.ts.map +1 -1
  31. package/dist/core/search.js +251 -56
  32. package/dist/core/search.js.map +1 -1
  33. package/dist/index.d.ts +1 -1
  34. package/dist/index.d.ts.map +1 -1
  35. package/dist/index.js +460 -53
  36. package/dist/index.js.map +1 -1
  37. package/dist/memory/git-memory.d.ts +9 -0
  38. package/dist/memory/git-memory.d.ts.map +1 -0
  39. package/dist/memory/git-memory.js +51 -0
  40. package/dist/memory/git-memory.js.map +1 -0
  41. package/dist/memory/store.d.ts +16 -0
  42. package/dist/memory/store.d.ts.map +1 -1
  43. package/dist/memory/store.js +40 -1
  44. package/dist/memory/store.js.map +1 -1
  45. package/dist/patterns/semantics.d.ts +4 -0
  46. package/dist/patterns/semantics.d.ts.map +1 -0
  47. package/dist/patterns/semantics.js +24 -0
  48. package/dist/patterns/semantics.js.map +1 -0
  49. package/dist/preflight/evidence-lock.d.ts +50 -0
  50. package/dist/preflight/evidence-lock.d.ts.map +1 -0
  51. package/dist/preflight/evidence-lock.js +130 -0
  52. package/dist/preflight/evidence-lock.js.map +1 -0
  53. package/dist/preflight/query-scope.d.ts +3 -0
  54. package/dist/preflight/query-scope.d.ts.map +1 -0
  55. package/dist/preflight/query-scope.js +40 -0
  56. package/dist/preflight/query-scope.js.map +1 -0
  57. package/dist/resources/uri.d.ts +5 -0
  58. package/dist/resources/uri.d.ts.map +1 -0
  59. package/dist/resources/uri.js +15 -0
  60. package/dist/resources/uri.js.map +1 -0
  61. package/dist/storage/lancedb.d.ts +1 -0
  62. package/dist/storage/lancedb.d.ts.map +1 -1
  63. package/dist/storage/lancedb.js +24 -3
  64. package/dist/storage/lancedb.js.map +1 -1
  65. package/dist/storage/types.d.ts +5 -0
  66. package/dist/storage/types.d.ts.map +1 -1
  67. package/dist/storage/types.js.map +1 -1
  68. package/dist/types/index.d.ts +21 -1
  69. package/dist/types/index.d.ts.map +1 -1
  70. package/dist/utils/git-dates.d.ts +1 -0
  71. package/dist/utils/git-dates.d.ts.map +1 -1
  72. package/dist/utils/git-dates.js +20 -0
  73. package/dist/utils/git-dates.js.map +1 -1
  74. package/dist/utils/usage-tracker.d.ts.map +1 -1
  75. package/dist/utils/usage-tracker.js +3 -6
  76. package/dist/utils/usage-tracker.js.map +1 -1
  77. package/package.json +16 -8
@@ -1 +1 @@
1
- {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/core/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAa,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAY3E,MAAM,WAAW,aAAa;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AASD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,MAAM,CAAmB;IAEjC,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,eAAe,CAAsC;IAE7D,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,mBAAmB,CAIX;gBAEJ,QAAQ,EAAE,MAAM;IAKtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAsBnB,gBAAgB;IA4B9B;;OAEG;YACW,uBAAuB;IAsDrC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+BlB,MAAM,CACV,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAU,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,GAAE,aAAsC,GAC9C,OAAO,CAAC,YAAY,EAAE,CAAC;IAiH1B,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,eAAe;YAWT,cAAc;YAmBd,aAAa;IA4E3B,OAAO,CAAC,uBAAuB;IAoBzB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAOtC,OAAO,IAAI,OAAO;CAGnB"}
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/core/search.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAa,YAAY,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAc3E,MAAM,WAAW,aAAa;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,mBAAmB,CAAC;IAC9B,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,SAAS,CAAC;AAiE9E,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,WAAW,CAAS;IAE5B,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,MAAM,CAAmB;IAEjC,OAAO,CAAC,iBAAiB,CAAkC;IAC3D,OAAO,CAAC,eAAe,CAAsC;IAE7D,OAAO,CAAC,WAAW,CAAS;IAG5B,OAAO,CAAC,mBAAmB,CAIX;gBAEJ,QAAQ,EAAE,MAAM;IAKtB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAsBnB,gBAAgB;IA4B9B;;OAEG;YACW,uBAAuB;IAsDrC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA+BxB,OAAO,CAAC,UAAU;IAUlB,OAAO,CAAC,mBAAmB;IAO3B,OAAO,CAAC,kBAAkB;IAkC1B,OAAO,CAAC,qBAAqB;IAe7B,OAAO,CAAC,qBAAqB;IAQ7B,OAAO,CAAC,yBAAyB;IAMjC,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,uBAAuB;IAc/B,OAAO,CAAC,mBAAmB;IA2F3B,OAAO,CAAC,mBAAmB;YAuBb,oBAAoB;IAmE5B,MAAM,CACV,KAAK,EAAE,MAAM,EACb,KAAK,GAAE,MAAU,EACjB,OAAO,CAAC,EAAE,aAAa,EACvB,OAAO,GAAE,aAAsC,GAC9C,OAAO,CAAC,YAAY,EAAE,CAAC;IA4E1B,OAAO,CAAC,eAAe;IAiDvB,OAAO,CAAC,eAAe;YAWT,cAAc;YAmBd,aAAa;IA4E3B,OAAO,CAAC,uBAAuB;IAoBzB,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAOtC,OAAO,IAAI,OAAO;CAGnB"}
@@ -9,13 +9,64 @@ import { getEmbeddingProvider } from '../embeddings/index.js';
9
9
  import { getStorageProvider } from '../storage/index.js';
10
10
  import { analyzerRegistry } from './analyzer-registry.js';
11
11
  import { IndexCorruptedError } from '../errors/index.js';
12
+ import { isTestingRelatedQuery } from '../preflight/query-scope.js';
13
+ import { assessSearchQuality } from './search-quality.js';
12
14
  import { CODEBASE_CONTEXT_DIRNAME, INTELLIGENCE_FILENAME, KEYWORD_INDEX_FILENAME, VECTOR_DB_DIRNAME } from '../constants/codebase-context.js';
13
15
  const DEFAULT_SEARCH_OPTIONS = {
14
16
  useSemanticSearch: true,
15
17
  useKeywordSearch: true,
16
18
  semanticWeight: 0.7,
17
- keywordWeight: 0.3
19
+ keywordWeight: 0.3,
20
+ profile: 'explore',
21
+ enableQueryExpansion: true,
22
+ enableLowConfidenceRescue: true,
23
+ candidateFloor: 30
18
24
  };
25
+ const QUERY_EXPANSION_HINTS = [
26
+ {
27
+ pattern: /\b(auth|authentication|login|signin|sign-in|session|token|oauth)\b/i,
28
+ terms: ['auth', 'login', 'token', 'session', 'guard', 'oauth']
29
+ },
30
+ {
31
+ pattern: /\b(route|routes|routing|router|navigate|navigation|redirect|path)\b/i,
32
+ terms: ['router', 'route', 'navigation', 'redirect', 'path']
33
+ },
34
+ {
35
+ pattern: /\b(config|configuration|configure|setup|register|provider|providers|bootstrap)\b/i,
36
+ terms: ['config', 'setup', 'register', 'provider', 'bootstrap']
37
+ },
38
+ {
39
+ pattern: /\b(role|roles|permission|permissions|authorization|authorisation|access)\b/i,
40
+ terms: ['roles', 'permissions', 'access', 'policy', 'guard']
41
+ },
42
+ {
43
+ pattern: /\b(interceptor|middleware|request|response|http)\b/i,
44
+ terms: ['interceptor', 'middleware', 'http', 'request', 'response']
45
+ },
46
+ {
47
+ pattern: /\b(theme|styles?|styling|palette|color|branding|upload)\b/i,
48
+ terms: ['theme', 'styles', 'palette', 'color', 'branding', 'upload']
49
+ }
50
+ ];
51
+ const QUERY_STOP_WORDS = new Set([
52
+ 'the',
53
+ 'a',
54
+ 'an',
55
+ 'to',
56
+ 'of',
57
+ 'for',
58
+ 'and',
59
+ 'or',
60
+ 'with',
61
+ 'in',
62
+ 'on',
63
+ 'by',
64
+ 'how',
65
+ 'are',
66
+ 'is',
67
+ 'after',
68
+ 'before'
69
+ ]);
19
70
  export class CodebaseSearcher {
20
71
  rootPath;
21
72
  storagePath;
@@ -144,75 +195,122 @@ export class CodebaseSearcher {
144
195
  }
145
196
  return { trend: 'Stable' };
146
197
  }
147
- async search(query, limit = 5, filters, options = DEFAULT_SEARCH_OPTIONS) {
148
- if (!this.initialized) {
149
- await this.initialize();
150
- }
151
- const { useSemanticSearch, useKeywordSearch, semanticWeight, keywordWeight } = {
152
- ...DEFAULT_SEARCH_OPTIONS,
153
- ...options
154
- };
155
- const results = new Map();
156
- if (useSemanticSearch && this.embeddingProvider && this.storageProvider) {
157
- try {
158
- const vectorResults = await this.semanticSearch(query, limit * 2, filters);
159
- vectorResults.forEach((result) => {
160
- const id = result.chunk.id;
161
- const existing = results.get(id);
162
- if (existing) {
163
- existing.scores.push(result.score * (semanticWeight || 0.7));
164
- }
165
- else {
166
- results.set(id, {
167
- chunk: result.chunk,
168
- scores: [result.score * (semanticWeight || 0.7)]
169
- });
170
- }
171
- });
172
- }
173
- catch (error) {
174
- if (error instanceof IndexCorruptedError) {
175
- throw error; // Propagate to handler for auto-heal
198
+ isTestFile(filePath) {
199
+ const normalized = filePath.toLowerCase().replace(/\\/g, '/');
200
+ return (normalized.includes('.spec.') ||
201
+ normalized.includes('.test.') ||
202
+ normalized.includes('/e2e/') ||
203
+ normalized.includes('/__tests__/'));
204
+ }
205
+ normalizeQueryTerms(query) {
206
+ return query
207
+ .toLowerCase()
208
+ .split(/[^a-z0-9_]+/)
209
+ .filter((term) => term.length > 2 && !QUERY_STOP_WORDS.has(term));
210
+ }
211
+ buildQueryVariants(query, maxExpansions) {
212
+ const variants = [{ query, weight: 1 }];
213
+ if (maxExpansions <= 0)
214
+ return variants;
215
+ const normalized = query.toLowerCase();
216
+ const terms = new Set(this.normalizeQueryTerms(query));
217
+ for (const hint of QUERY_EXPANSION_HINTS) {
218
+ if (!hint.pattern.test(query))
219
+ continue;
220
+ for (const term of hint.terms) {
221
+ if (!normalized.includes(term)) {
222
+ terms.add(term);
176
223
  }
177
- console.warn('Semantic search failed:', error);
178
224
  }
179
225
  }
180
- if (useKeywordSearch && this.fuseIndex) {
181
- try {
182
- const keywordResults = await this.keywordSearch(query, limit * 2, filters);
183
- keywordResults.forEach((result) => {
184
- const id = result.chunk.id;
185
- const existing = results.get(id);
186
- if (existing) {
187
- existing.scores.push(result.score * (keywordWeight || 0.3));
188
- }
189
- else {
190
- results.set(id, {
191
- chunk: result.chunk,
192
- scores: [result.score * (keywordWeight || 0.3)]
193
- });
194
- }
195
- });
196
- }
197
- catch (error) {
198
- console.warn('Keyword search failed:', error);
226
+ const addedTerms = Array.from(terms).filter((term) => !normalized.includes(term));
227
+ if (addedTerms.length === 0)
228
+ return variants;
229
+ const firstExpansion = `${query} ${addedTerms.slice(0, 6).join(' ')}`.trim();
230
+ if (firstExpansion !== query) {
231
+ variants.push({ query: firstExpansion, weight: 0.35 });
232
+ }
233
+ if (maxExpansions > 1 && addedTerms.length > 6) {
234
+ const secondExpansion = `${query} ${addedTerms.slice(6, 12).join(' ')}`.trim();
235
+ if (secondExpansion !== query) {
236
+ variants.push({ query: secondExpansion, weight: 0.25 });
199
237
  }
200
238
  }
201
- const combinedResults = Array.from(results.entries())
239
+ return variants.slice(0, 1 + maxExpansions);
240
+ }
241
+ isCompositionRootFile(filePath) {
242
+ const normalized = filePath.toLowerCase().replace(/\\/g, '/');
243
+ const base = path.basename(normalized);
244
+ if (/^(main|index|bootstrap|startup)\./.test(base))
245
+ return true;
246
+ return (normalized.includes('/routes') ||
247
+ normalized.includes('/routing') ||
248
+ normalized.includes('/router') ||
249
+ normalized.includes('/config') ||
250
+ normalized.includes('/providers'));
251
+ }
252
+ queryPathTokenOverlap(filePath, query) {
253
+ const queryTerms = new Set(this.normalizeQueryTerms(query));
254
+ if (queryTerms.size === 0)
255
+ return 0;
256
+ const pathTerms = this.normalizeQueryTerms(filePath.replace(/\\/g, '/'));
257
+ return pathTerms.reduce((count, term) => (queryTerms.has(term) ? count + 1 : count), 0);
258
+ }
259
+ isLikelyWiringOrFlowQuery(query) {
260
+ return /\b(route|router|routing|navigate|navigation|redirect|auth|authentication|login|provider|register|config|configuration|interceptor|middleware)\b/i.test(query);
261
+ }
262
+ isActionOrHowQuery(query) {
263
+ return /\b(how|where|configure|configured|setup|register|wire|wiring|navigate|redirect|login|authenticate|copy|upload|handle|create|update|delete)\b/i.test(query);
264
+ }
265
+ isDefinitionHeavyResult(chunk) {
266
+ const normalizedPath = chunk.filePath.toLowerCase().replace(/\\/g, '/');
267
+ const componentType = (chunk.componentType || '').toLowerCase();
268
+ if (['type', 'interface', 'enum', 'constant'].includes(componentType))
269
+ return true;
270
+ return (normalizedPath.includes('/models/') ||
271
+ normalizedPath.includes('/interfaces/') ||
272
+ normalizedPath.includes('/types/') ||
273
+ normalizedPath.includes('/constants'));
274
+ }
275
+ scoreAndSortResults(query, limit, results, profile) {
276
+ const likelyWiringQuery = this.isLikelyWiringOrFlowQuery(query);
277
+ const actionQuery = this.isActionOrHowQuery(query);
278
+ return Array.from(results.entries())
202
279
  .map(([_id, { chunk, scores }]) => {
203
280
  // Calculate base combined score
204
281
  let combinedScore = scores.reduce((sum, score) => sum + score, 0);
205
282
  // Normalize to 0-1 range (scores are already weighted)
206
283
  // If both semantic and keyword matched, max possible is ~1.0
207
284
  combinedScore = Math.min(1.0, combinedScore);
208
- // Boost scores for Angular components with proper detection
209
- if (chunk.componentType && chunk.framework === 'angular') {
210
- combinedScore = Math.min(1.0, combinedScore * 1.3);
285
+ // Slight boost when analyzer identified a concrete component type
286
+ if (chunk.componentType && chunk.componentType !== 'unknown') {
287
+ combinedScore = Math.min(1.0, combinedScore * 1.1);
211
288
  }
212
289
  // Boost if layer is detected
213
290
  if (chunk.layer && chunk.layer !== 'unknown') {
214
291
  combinedScore = Math.min(1.0, combinedScore * 1.1);
215
292
  }
293
+ // Query-aware reranking to reduce noisy matches in practical workflows.
294
+ if (!isTestingRelatedQuery(query) && this.isTestFile(chunk.filePath)) {
295
+ combinedScore = combinedScore * 0.75;
296
+ }
297
+ if (actionQuery && this.isDefinitionHeavyResult(chunk)) {
298
+ combinedScore = combinedScore * 0.82;
299
+ }
300
+ if (actionQuery &&
301
+ ['service', 'component', 'interceptor', 'guard', 'module', 'resolver'].includes((chunk.componentType || '').toLowerCase())) {
302
+ combinedScore = Math.min(1.0, combinedScore * 1.06);
303
+ }
304
+ // Light intent-aware boost for likely wiring/configuration queries.
305
+ if (likelyWiringQuery && profile !== 'explore') {
306
+ if (this.isCompositionRootFile(chunk.filePath)) {
307
+ combinedScore = Math.min(1.0, combinedScore * 1.12);
308
+ }
309
+ }
310
+ const pathOverlap = this.queryPathTokenOverlap(chunk.filePath, query);
311
+ if (pathOverlap >= 2) {
312
+ combinedScore = Math.min(1.0, combinedScore * 1.08);
313
+ }
216
314
  // v1.2: Detect pattern trend and apply momentum boost
217
315
  const { trend, warning } = this.detectChunkTrend(chunk);
218
316
  if (trend === 'Rising') {
@@ -243,7 +341,104 @@ export class CodebaseSearcher {
243
341
  })
244
342
  .sort((a, b) => b.score - a.score)
245
343
  .slice(0, limit);
246
- return combinedResults;
344
+ }
345
+ pickBetterResultSet(query, primary, rescue) {
346
+ const primaryQuality = assessSearchQuality(query, primary);
347
+ const rescueQuality = assessSearchQuality(query, rescue);
348
+ if (rescueQuality.status === 'ok' &&
349
+ primaryQuality.status === 'low_confidence' &&
350
+ rescueQuality.confidence >= primaryQuality.confidence) {
351
+ return rescue;
352
+ }
353
+ if (rescueQuality.confidence >= primaryQuality.confidence + 0.05) {
354
+ return rescue;
355
+ }
356
+ return primary;
357
+ }
358
+ async collectHybridMatches(queryVariants, candidateLimit, filters, useSemanticSearch, useKeywordSearch, semanticWeight, keywordWeight) {
359
+ const results = new Map();
360
+ if (useSemanticSearch && this.embeddingProvider && this.storageProvider) {
361
+ try {
362
+ for (const variant of queryVariants) {
363
+ const vectorResults = await this.semanticSearch(variant.query, candidateLimit, filters);
364
+ vectorResults.forEach((result) => {
365
+ const id = result.chunk.id;
366
+ const weightedScore = result.score * semanticWeight * variant.weight;
367
+ const existing = results.get(id);
368
+ if (existing) {
369
+ existing.scores.push(weightedScore);
370
+ }
371
+ else {
372
+ results.set(id, {
373
+ chunk: result.chunk,
374
+ scores: [weightedScore]
375
+ });
376
+ }
377
+ });
378
+ }
379
+ }
380
+ catch (error) {
381
+ if (error instanceof IndexCorruptedError) {
382
+ throw error; // Propagate to handler for auto-heal
383
+ }
384
+ console.warn('Semantic search failed:', error);
385
+ }
386
+ }
387
+ if (useKeywordSearch && this.fuseIndex) {
388
+ try {
389
+ for (const variant of queryVariants) {
390
+ const keywordResults = await this.keywordSearch(variant.query, candidateLimit, filters);
391
+ keywordResults.forEach((result) => {
392
+ const id = result.chunk.id;
393
+ const weightedScore = result.score * keywordWeight * variant.weight;
394
+ const existing = results.get(id);
395
+ if (existing) {
396
+ existing.scores.push(weightedScore);
397
+ }
398
+ else {
399
+ results.set(id, {
400
+ chunk: result.chunk,
401
+ scores: [weightedScore]
402
+ });
403
+ }
404
+ });
405
+ }
406
+ }
407
+ catch (error) {
408
+ console.warn('Keyword search failed:', error);
409
+ }
410
+ }
411
+ return results;
412
+ }
413
+ async search(query, limit = 5, filters, options = DEFAULT_SEARCH_OPTIONS) {
414
+ if (!this.initialized) {
415
+ await this.initialize();
416
+ }
417
+ const { useSemanticSearch, useKeywordSearch, semanticWeight, keywordWeight, profile, enableQueryExpansion, enableLowConfidenceRescue, candidateFloor } = {
418
+ ...DEFAULT_SEARCH_OPTIONS,
419
+ ...options
420
+ };
421
+ const candidateLimit = Math.max(limit * 2, candidateFloor || 30);
422
+ const primaryVariants = this.buildQueryVariants(query, enableQueryExpansion ? 1 : 0);
423
+ const primaryMatches = await this.collectHybridMatches(primaryVariants, candidateLimit, filters, Boolean(useSemanticSearch), Boolean(useKeywordSearch), semanticWeight || 0.7, keywordWeight || 0.3);
424
+ const primaryResults = this.scoreAndSortResults(query, limit, primaryMatches, (profile || 'explore'));
425
+ if (!enableLowConfidenceRescue) {
426
+ return primaryResults;
427
+ }
428
+ const primaryQuality = assessSearchQuality(query, primaryResults);
429
+ if (primaryQuality.status !== 'low_confidence') {
430
+ return primaryResults;
431
+ }
432
+ const rescueVariants = this.buildQueryVariants(query, 2).slice(1);
433
+ if (rescueVariants.length === 0) {
434
+ return primaryResults;
435
+ }
436
+ const rescueMatches = await this.collectHybridMatches(rescueVariants.map((variant, index) => ({
437
+ query: variant.query,
438
+ weight: index === 0 ? 1 : 0.8
439
+ })), candidateLimit, filters, Boolean(useSemanticSearch), Boolean(useKeywordSearch), semanticWeight || 0.7, keywordWeight || 0.3);
440
+ const rescueResults = this.scoreAndSortResults(query, limit, rescueMatches, (profile || 'explore'));
441
+ return this.pickBetterResultSet(query, primaryResults, rescueResults);
247
442
  }
248
443
  generateSummary(chunk) {
249
444
  const analyzer = chunk.framework ? analyzerRegistry.get(chunk.framework) : null;
@@ -287,7 +482,7 @@ export class CodebaseSearcher {
287
482
  };
288
483
  return `${langMap[ext] || ext.toUpperCase()} in ${fileName}.`;
289
484
  }
290
- generateSnippet(content, maxLines = 100) {
485
+ generateSnippet(content, maxLines = 20) {
291
486
  const lines = content.split('\n');
292
487
  if (lines.length <= maxLines) {
293
488
  return content;
@@ -1 +1 @@
1
- {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/core/search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search.js","sourceRoot":"","sources":["../../src/core/search.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -13,7 +13,7 @@ export interface IndexState {
13
13
  }
14
14
  declare const server: Server;
15
15
  declare const TOOLS: Tool[];
16
- declare function performIndexing(): Promise<void>;
16
+ declare function performIndexing(incrementalOnly?: boolean): Promise<void>;
17
17
  declare function shouldReindex(): Promise<boolean>;
18
18
  export { server, performIndexing, resolveRootPath, shouldReindex, TOOLS };
19
19
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,EAKL,IAAI,EAEL,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EAKd,MAAM,kBAAkB,CAAC;AAyB1B,iBAAS,eAAe,IAAI,MAAM,CAejC;AAqFD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;IAChD,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAMD,QAAA,MAAM,MAAM,EAAE,MAWb,CAAC;AAEF,QAAA,MAAM,KAAK,EAAE,IAAI,EAmOhB,CAAC;AA8JF,iBAAe,eAAe,IAAI,OAAO,CAAC,IAAI,CAAC,CAsC9C;AAED,iBAAe,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ/C;AAw4BD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAaA,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,EAKL,IAAI,EAEL,MAAM,oCAAoC,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EACV,aAAa,EAMd,MAAM,kBAAkB,CAAC;AAqC1B,iBAAS,eAAe,IAAI,MAAM,CAejC;AAqFD,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,GAAG,OAAO,CAAC;IAChD,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,KAAK,CAAC,EAAE,aAAa,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,eAAe,CAAC;CAC3B;AAWD,QAAA,MAAM,MAAM,EAAE,MAWb,CAAC;AAEF,QAAA,MAAM,KAAK,EAAE,IAAI,EA+OhB,CAAC;AAmOF,iBAAe,eAAe,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDvE;AAED,iBAAe,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAQ/C;AAouCD,OAAO,EAAE,MAAM,EAAE,eAAe,EAAE,eAAe,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC"}