@mmnto/mcp 1.103.0 → 1.105.0

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.
@@ -6,6 +6,14 @@ export interface SearchLogEntry {
6
6
  resultCount: number;
7
7
  durationMs: number;
8
8
  topScore: number | null;
9
+ /**
10
+ * Best per-hit relevance (vector-leg similarity, 0..1) for this query, or
11
+ * `null` when no hit carried a relevance signal (mmnto-ai/totem#2463).
12
+ * Recorded alongside `topScore` because `topScore` is an RRF rank artifact in
13
+ * hybrid/federated modes — `topRelevance` is the calibratable retrieval-quality
14
+ * signal the pilot floor tuning reads. Optional: absent on pre-#2463 entries.
15
+ */
16
+ topRelevance?: number | null;
9
17
  error?: string;
10
18
  /**
11
19
  * A.3.a schema extension (ADR-029 flight-readiness note; ruled in on
@@ -1 +1 @@
1
- {"version":3,"file":"search-log.d.ts","sourceRoot":"","sources":["../src/search-log.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2OAA2O;IAC3O,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,6NAA6N;IAC7N,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAaD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,oBAAoB,CAgBtB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAQD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEhD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAsB/D;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAc5C"}
1
+ {"version":3,"file":"search-log.d.ts","sourceRoot":"","sources":["../src/search-log.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;;;;;;;;;;;;OAgBG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,2OAA2O;IAC3O,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,6NAA6N;IAC7N,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAaD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,0BAA0B,CACxC,GAAG,GAAE,MAAM,CAAC,UAAwB,GACnC,oBAAoB,CAgBtB;AAED,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAQD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEhD;AAED;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,GAAG,cAAc,CAsB/D;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,WAAW,CAc5C"}
@@ -1 +1 @@
1
- {"version":3,"file":"search-log.js","sourceRoot":"","sources":["../src/search-log.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-log.js","sourceRoot":"","sources":["../src/search-log.ts"],"names":[],"mappings":"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"}
@@ -5,5 +5,21 @@ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
5
5
  * repeatedly across individual test cases.
6
6
  */
7
7
  export declare function _resetSessionFlags(): void;
8
+ /**
9
+ * Machine-parsable retrieval outcome line (mmnto-ai/totem#2463). Sits directly
10
+ * below the `<index-meta>` line and shares its self-closing XML-attribute shape
11
+ * so a wrapper agent can read the whole outcome with one regex. Every attribute
12
+ * value is a closed enum or a formatted number — no user input — so no XML
13
+ * escaping is required. `hits` counts RETURNED hits: 0 for `no_useful_hits`
14
+ * (candidates are disclosed, not returned) and the floor-exempt subset for a
15
+ * mixed below-floor batch.
16
+ */
17
+ export declare function formatRetrievalEnvelope(params: {
18
+ status: 'ok' | 'no_useful_hits' | 'empty';
19
+ method: 'hybrid' | 'vector' | 'fts';
20
+ bestRelevance: number | null;
21
+ floor: number;
22
+ hits: number;
23
+ }): string;
8
24
  export declare function registerSearchKnowledge(server: McpServer): void;
9
25
  //# sourceMappingURL=search-knowledge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-knowledge.d.ts","sourceRoot":"","sources":["../../src/tools/search-knowledge.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0CzE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAgjBD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAyL/D"}
1
+ {"version":3,"file":"search-knowledge.d.ts","sourceRoot":"","sources":["../../src/tools/search-knowledge.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AA0CzE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAkWD;;;;;;;;GAQG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC9C,MAAM,EAAE,IAAI,GAAG,gBAAgB,GAAG,OAAO,CAAC;IAC1C,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,KAAK,CAAC;IACpC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CACd,GAAG,MAAM,CAMT;AAgcD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAsN/D"}
@@ -1,6 +1,6 @@
1
1
  import * as path from 'node:path';
2
2
  import { z } from 'zod';
3
- import { ContentTypeSchema } from '@mmnto/totem';
3
+ import { ContentTypeSchema, DEFAULT_SEARCH_RELEVANCE_FLOOR } from '@mmnto/totem';
4
4
  import { getContext, reconnectStore } from '../context.js';
5
5
  import { logMcpCall } from '../ledger-writer.js';
6
6
  import { logSearch, setLogDir } from '../search-log.js';
@@ -154,13 +154,24 @@ function formatResult(r, index) {
154
154
  // joined with explicit `+` rather than two adjacent template placeholders
155
155
  // (which the concat-without-delimiter lint rule flags).
156
156
  const labelWithTag = r.sourceRepo ? `[${r.sourceRepo}] ` + r.label : r.label;
157
+ // mmnto-ai/totem#2463: surface the true relevance signal alongside the
158
+ // ordering `score`. `score` stays (RRF rank artifact — drives display order);
159
+ // `relevance` is the vector-leg similarity, so the agent never mistakes an
160
+ // absent signal for a low one. The "keyword match" note is reserved for
161
+ // fts-stamped hits — a vector/hybrid hit that (defensively) lacks relevance
162
+ // shows a bare "n/a" rather than being mislabeled as a keyword match.
163
+ const relevanceField = typeof r.relevance === 'number'
164
+ ? r.relevance.toFixed(3)
165
+ : r.searchMethod === 'fts'
166
+ ? 'n/a (keyword match)'
167
+ : 'n/a';
157
168
  // mmnto/totem#1295 CR MAJOR: ALWAYS display the absolute path. The whole
158
169
  // point of `absoluteFilePath` on `SearchResult` is to give agents an
159
170
  // unambiguous Read/Edit target. Falling back to the relative `filePath`
160
171
  // for primary hits reintroduced repo-root ambiguity in the common case —
161
172
  // exactly the bug that field was added to fix.
162
173
  return (`### ${index + 1}. ${labelWithTag} (${r.type})\n` +
163
- `**File:** ${r.absoluteFilePath} | **Score:** ${r.score.toFixed(3)}\n\n` +
174
+ `**File:** ${r.absoluteFilePath} | **Score:** ${r.score.toFixed(3)} | **Relevance:** ${relevanceField}\n\n` +
164
175
  r.content);
165
176
  }
166
177
  /**
@@ -190,7 +201,7 @@ function formatResult(r, index) {
190
201
  *
191
202
  * mmnto/totem#1294 Phase 2 + mmnto/totem#1295 fix.
192
203
  */
193
- async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, failures) {
204
+ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, failures, onFtsFallback) {
194
205
  const { store: primaryStore, linkedStores } = await getContext();
195
206
  // mmnto/totem#1295 GCA HIGH: catch primary failures inside federatedSearch
196
207
  // ONLY when linked stores exist, so a transient primary failure doesn't
@@ -208,12 +219,25 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
208
219
  const hasLinkedStores = linkedStores.size > 0;
209
220
  const primaryPromise = hasLinkedStores
210
221
  ? primaryStore
211
- .search({ query, typeFilter, maxResults: perStoreLimit })
222
+ .search({
223
+ query,
224
+ typeFilter,
225
+ maxResults: perStoreLimit,
226
+ allowFtsFallback: true,
227
+ onFtsFallback,
228
+ })
212
229
  .catch(async (err) => {
213
230
  const firstMsg = err instanceof Error ? err.message : String(err);
214
231
  try {
215
232
  await primaryStore.reconnect();
216
- return await primaryStore.search({ query, typeFilter, maxResults: perStoreLimit });
233
+ return await primaryStore.search({
234
+ query,
235
+ typeFilter,
236
+ maxResults: perStoreLimit,
237
+ allowFtsFallback: true,
238
+ onFtsFallback,
239
+ });
240
+ // totem-context: mmnto-ai/totem#1295 — the catch below is not a silent swallow; the failure is recorded in `failures.primary` and surfaced to the agent as a per-query system warning.
217
241
  }
218
242
  catch (retryErr) {
219
243
  const retryMsg = retryErr instanceof Error ? retryErr.message : String(retryErr);
@@ -230,18 +254,39 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
230
254
  return [];
231
255
  }
232
256
  })
233
- : primaryStore.search({ query, typeFilter, maxResults: perStoreLimit });
257
+ : primaryStore.search({
258
+ query,
259
+ typeFilter,
260
+ maxResults: perStoreLimit,
261
+ allowFtsFallback: true,
262
+ onFtsFallback,
263
+ });
234
264
  // Linked stores: catch per-store failures so one broken linked index
235
265
  // doesn't break the overall query. On failure, attempt targeted
236
266
  // reconnect + retry, then return empty for this query (populating
237
267
  // `failures.linked` for the caller to surface). Global state is NEVER
238
268
  // mutated here — the store stays in `linkedStores` so the next query
239
269
  // can try again (the transient issue may have cleared).
240
- const linkedPromises = Array.from(linkedStores.entries()).map(([name, ls]) => ls.search({ query, typeFilter, maxResults: perStoreLimit }).catch(async (err) => {
270
+ const linkedPromises = Array.from(linkedStores.entries()).map(([name, ls]) => ls
271
+ .search({
272
+ query,
273
+ typeFilter,
274
+ maxResults: perStoreLimit,
275
+ allowFtsFallback: true,
276
+ onFtsFallback,
277
+ })
278
+ .catch(async (err) => {
241
279
  const firstMsg = err instanceof Error ? err.message : String(err);
242
280
  try {
243
281
  await ls.reconnect();
244
- return await ls.search({ query, typeFilter, maxResults: perStoreLimit });
282
+ return await ls.search({
283
+ query,
284
+ typeFilter,
285
+ maxResults: perStoreLimit,
286
+ allowFtsFallback: true,
287
+ onFtsFallback,
288
+ });
289
+ // totem-context: mmnto-ai/totem#1295 — the catch below is not a silent swallow; the failure is recorded in `failures.linked` and surfaced to the agent as a per-query system warning.
245
290
  }
246
291
  catch (retryErr) {
247
292
  const retryMsg = retryErr instanceof Error ? retryErr.message : String(retryErr);
@@ -284,6 +329,11 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
284
329
  //
285
330
  // RRF k=60 matches the constant used inside `LanceStore.rrfMerge` for
286
331
  // intra-store hybrid fusion, for consistency.
332
+ //
333
+ // mmnto-ai/totem#2463: the `{ ...r }` spread carries each hit's `relevance`
334
+ // and `searchMethod` through untouched — this second fusion site overwrites
335
+ // ONLY `score`, exactly as the intra-store `rrfMerge` does, so the true
336
+ // relevance signal survives federation just as it survives single-store mode.
287
337
  const RRF_K_FEDERATION = 60;
288
338
  const reranked = [];
289
339
  for (const bucket of buckets) {
@@ -294,7 +344,35 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
294
344
  reranked.sort((a, b) => (b.score ?? 0) - (a.score ?? 0));
295
345
  return reranked.slice(0, finalLimit);
296
346
  }
297
- async function performSearch(query, typeFilter, maxResults, boundary) {
347
+ /**
348
+ * Which retrieval path the returned hits came from, for the envelope's
349
+ * `method` attribute (mmnto-ai/totem#2463). Any fts-stamped hit means a store
350
+ * degraded to keyword-only, so `fts` is reported to keep the envelope method in
351
+ * lockstep with the loud fallback warning. All hits vector-only → `vector`;
352
+ * otherwise (default / mixed / empty) → `hybrid`.
353
+ */
354
+ function deriveSearchMethod(results) {
355
+ if (results.some((r) => r.searchMethod === 'fts'))
356
+ return 'fts';
357
+ if (results.length > 0 && results.every((r) => r.searchMethod === 'vector'))
358
+ return 'vector';
359
+ return 'hybrid';
360
+ }
361
+ /**
362
+ * Machine-parsable retrieval outcome line (mmnto-ai/totem#2463). Sits directly
363
+ * below the `<index-meta>` line and shares its self-closing XML-attribute shape
364
+ * so a wrapper agent can read the whole outcome with one regex. Every attribute
365
+ * value is a closed enum or a formatted number — no user input — so no XML
366
+ * escaping is required. `hits` counts RETURNED hits: 0 for `no_useful_hits`
367
+ * (candidates are disclosed, not returned) and the floor-exempt subset for a
368
+ * mixed below-floor batch.
369
+ */
370
+ export function formatRetrievalEnvelope(params) {
371
+ const best = params.bestRelevance !== null ? params.bestRelevance.toFixed(3) : 'n/a';
372
+ return (`<retrieval-envelope status="${params.status}" method="${params.method}" ` +
373
+ `bestRelevance="${best}" floor="${params.floor.toFixed(3)}" hits="${params.hits}" />`);
374
+ }
375
+ async function performSearch(query, typeFilter, maxResults, boundary, minRelevance) {
298
376
  const { config, linkedStores, linkedStoreInitErrors, projectRoot } = await getContext();
299
377
  const finalLimit = maxResults ?? 5;
300
378
  // Knowledge-index freshness envelope (mmnto-ai/totem#2029 — docs-drift Mech C).
@@ -341,6 +419,14 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
341
419
  // hits. The agent would think it's querying the linked repo but get
342
420
  // local results — exactly the "silent drift" pattern Tenet 4 forbids.
343
421
  // Shield AI catch on mmnto/totem#1294 Phase 2 review.
422
+ // Out-of-band FTS-fallback signal (greptile P1, mmnto-ai/totem#2494 round 2):
423
+ // a fallback that returns ZERO rows leaves no fts-stamped result to infer
424
+ // from, so engagement is captured via callback — the envelope must report
425
+ // the embedder outage even on an empty keyword result set.
426
+ let ftsFallbackEngaged = false;
427
+ const onFtsFallback = () => {
428
+ ftsFallbackEngaged = true;
429
+ };
344
430
  let results;
345
431
  if (boundary !== undefined && config.partitions?.[boundary]) {
346
432
  // Case 1: local partition — primary only, prefix filter
@@ -350,6 +436,8 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
350
436
  typeFilter,
351
437
  maxResults: finalLimit,
352
438
  boundary: config.partitions[boundary],
439
+ allowFtsFallback: true,
440
+ onFtsFallback,
353
441
  });
354
442
  }
355
443
  else if (boundary !== undefined && linkedStores.has(boundary)) {
@@ -364,13 +452,27 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
364
452
  // real outage as an absence of relevant knowledge.
365
453
  const linked = linkedStores.get(boundary);
366
454
  try {
367
- results = await linked.search({ query, typeFilter, maxResults: finalLimit });
455
+ results = await linked.search({
456
+ query,
457
+ typeFilter,
458
+ maxResults: finalLimit,
459
+ allowFtsFallback: true,
460
+ onFtsFallback,
461
+ });
462
+ // totem-context: mmnto-ai/totem#1295 — the catch below is not a silent swallow; a fully-failed targeted boundary (initial AND reconnect+retry throw) is surfaced to the agent as an isError ToolResult.
368
463
  }
369
464
  catch (err) {
370
465
  const firstMsg = err instanceof Error ? err.message : String(err);
371
466
  try {
372
467
  await linked.reconnect();
373
- results = await linked.search({ query, typeFilter, maxResults: finalLimit });
468
+ results = await linked.search({
469
+ query,
470
+ typeFilter,
471
+ maxResults: finalLimit,
472
+ allowFtsFallback: true,
473
+ onFtsFallback,
474
+ });
475
+ // totem-context: mmnto-ai/totem#1295 — the catch below is not a silent swallow; the double failure (initial AND reconnect+retry) is surfaced to the agent as an isError ToolResult.
374
476
  }
375
477
  catch (retryErr) {
376
478
  const retryMsg = retryErr instanceof Error ? retryErr.message : String(retryErr);
@@ -413,6 +515,8 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
413
515
  typeFilter,
414
516
  maxResults: finalLimit,
415
517
  boundary,
518
+ allowFtsFallback: true,
519
+ onFtsFallback,
416
520
  });
417
521
  }
418
522
  else {
@@ -420,7 +524,7 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
420
524
  // Pass the `failures` log so the federation path can populate it on
421
525
  // store errors without mutating global state. Primary lives in a
422
526
  // dedicated slot to avoid colliding with linked-store names.
423
- results = await federatedSearch(query, typeFilter, finalLimit, finalLimit, failures);
527
+ results = await federatedSearch(query, typeFilter, finalLimit, finalLimit, failures, onFtsFallback);
424
528
  }
425
529
  // Build the runtime-failures warning (if any) once so we can decide
426
530
  // whether to skip the "no results" early return for warn-only cases.
@@ -482,6 +586,39 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
482
586
  const allFederatedStoresFailed = boundary === undefined &&
483
587
  failures.primary !== null &&
484
588
  failures.linked.size === linkedStores.size;
589
+ // ─── Retrieval envelope + relevance floor (mmnto-ai/totem#2463) ──
590
+ //
591
+ // Floor on the TRUE relevance signal (`r.relevance`, vector-leg similarity),
592
+ // NEVER on the displayed `score` — that is an RRF rank artifact (≈0.016 by
593
+ // construction in hybrid/federated modes), so a floor over it would classify
594
+ // every fused hit as noise. The envelope discloses the outcome machine-
595
+ // readably beside the existing <index-meta> line.
596
+ const configuredFloor = typeof config.searchRelevanceFloor === 'number'
597
+ ? config.searchRelevanceFloor
598
+ : DEFAULT_SEARCH_RELEVANCE_FLOOR;
599
+ const effectiveFloor = minRelevance !== undefined ? minRelevance : configuredFloor;
600
+ // A zero-row fallback leaves nothing fts-stamped — the callback flag keeps
601
+ // the envelope method honest for an empty keyword-only result set
602
+ // (greptile P1, mmnto-ai/totem#2494 round 2).
603
+ const method = results.length === 0 && ftsFallbackEngaged ? 'fts' : deriveSearchMethod(results);
604
+ // Loud degradation notice (Tenet 4 — fail honest): fallback engagement is
605
+ // signaled out-of-band (zero-row case) OR inferred from any fts-stamped hit.
606
+ const fallbackEngaged = ftsFallbackEngaged || results.some((r) => r.searchMethod === 'fts');
607
+ const fallbackWarning = fallbackEngaged
608
+ ? formatSystemWarning([
609
+ 'Embedding provider unavailable — search degraded to KEYWORD-ONLY (FTS) results.',
610
+ '',
611
+ 'These matches carry NO semantic relevance signal (relevance is n/a); vector-similarity ranking is disabled until the embedder is restored. Fix the configured provider/API key or start Ollama, then retry for semantic results. (mmnto-ai/totem#2463)',
612
+ ].join('\n'))
613
+ : null;
614
+ // Best relevance = max over hits that CARRY a relevance signal. Empty-safe:
615
+ // only spread into Math.max when non-empty (else it yields -Infinity). `null`
616
+ // encodes "no hit carried a relevance signal" — the floor never fires then.
617
+ const relevances = results
618
+ .map((r) => r.relevance)
619
+ .filter((x) => typeof x === 'number');
620
+ const hasRelevanceSignal = relevances.length > 0;
621
+ const bestRelevance = hasRelevanceSignal ? Math.max(...relevances) : null;
485
622
  if (results.length === 0) {
486
623
  if (allFederatedStoresFailed) {
487
624
  return {
@@ -489,24 +626,113 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
489
626
  {
490
627
  type: 'text',
491
628
  text: runtimeWarning ??
492
- '[Totem Error] Federated search failed: every queried store errored.', // totem-ignore #1294 — system-generated + XML-wrapped
629
+ '[Totem Error] Federated search failed: every queried store errored.', // totem-ignore mmnto-ai/totem#1294 — system-generated + XML-wrapped
493
630
  },
494
631
  ],
495
632
  isError: true,
496
633
  };
497
634
  }
635
+ const emptyEnvelope = formatRetrievalEnvelope({
636
+ status: 'empty',
637
+ method,
638
+ bestRelevance,
639
+ floor: effectiveFloor,
640
+ hits: 0,
641
+ });
498
642
  const body = formatXmlResponse('knowledge', 'No results found.');
499
- const text = composeResponseText({ runtimeWarning, staleWarning, indexEnvelope, body }); // totem-ignore #1294 — composed from system-generated + XML-wrapped pieces
643
+ const text = composeResponseText({
644
+ fallbackWarning,
645
+ runtimeWarning,
646
+ staleWarning,
647
+ indexEnvelope,
648
+ retrievalEnvelope: emptyEnvelope,
649
+ body,
650
+ }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
500
651
  return { content: [{ type: 'text', text }] };
501
652
  }
653
+ // Floor fires ONLY when a real relevance signal exists — a pure-FTS corpus
654
+ // (no vector relevance to report) is never demoted to no_useful_hits. And it
655
+ // judges ONLY the hits that carry a signal: keyword-only hits have no
656
+ // comparable relevance and are floor-EXEMPT — a mixed batch must never
657
+ // withhold them because their vector-leg siblings scored weak (greptile P1,
658
+ // mmnto-ai/totem#2494 round 2).
659
+ if (hasRelevanceSignal && bestRelevance !== null && bestRelevance < effectiveFloor) {
660
+ const floorExempt = results.filter((r) => typeof r.relevance !== 'number');
661
+ const withheld = results.filter((r) => typeof r.relevance === 'number');
662
+ // Disclose every withheld below-floor candidate compactly (path +
663
+ // relevance, NO content) — exclusion is disclosed, never silently
664
+ // dropped (Prop 308 F1).
665
+ const candidateLines = withheld.map((r, i) => {
666
+ const rel = typeof r.relevance === 'number' ? r.relevance.toFixed(3) : 'n/a';
667
+ const label = r.sourceRepo ? `[${r.sourceRepo}] ` + r.absoluteFilePath : r.absoluteFilePath;
668
+ return `${i + 1}. ${label} — relevance ${rel}`;
669
+ });
670
+ const disclosure = [
671
+ `Below-floor candidates (disclosed, not returned — path + relevance only; floor ${effectiveFloor.toFixed(3)}, best relevance ${bestRelevance.toFixed(3)}):`,
672
+ ...candidateLines,
673
+ ].join('\n');
674
+ if (floorExempt.length === 0) {
675
+ // Every hit carried a below-floor signal → honest no_useful_hits.
676
+ const belowFloorEnvelope = formatRetrievalEnvelope({
677
+ status: 'no_useful_hits',
678
+ method,
679
+ bestRelevance,
680
+ floor: effectiveFloor,
681
+ hits: 0,
682
+ });
683
+ const body = formatXmlResponse('knowledge', [
684
+ `No results met the relevance floor of ${effectiveFloor.toFixed(3)} (best relevance ${bestRelevance.toFixed(3)}).`,
685
+ '',
686
+ disclosure,
687
+ ].join('\n'));
688
+ const text = composeResponseText({
689
+ fallbackWarning,
690
+ runtimeWarning,
691
+ staleWarning,
692
+ indexEnvelope,
693
+ retrievalEnvelope: belowFloorEnvelope,
694
+ body,
695
+ }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
696
+ return { content: [{ type: 'text', text }] };
697
+ }
698
+ // Mixed batch: return the floor-exempt keyword hits, disclose the
699
+ // withheld signal-bearing ones alongside.
700
+ const mixedEnvelope = formatRetrievalEnvelope({
701
+ status: 'ok',
702
+ method,
703
+ bestRelevance,
704
+ floor: effectiveFloor,
705
+ hits: floorExempt.length,
706
+ });
707
+ const formattedExempt = floorExempt.map((r, i) => formatResult(r, i)).join('\n\n---\n\n');
708
+ const body = formatXmlResponse('knowledge', formattedExempt + '\n\n---\n\n' + disclosure);
709
+ const text = composeResponseText({
710
+ fallbackWarning,
711
+ runtimeWarning,
712
+ staleWarning,
713
+ indexEnvelope,
714
+ retrievalEnvelope: mixedEnvelope,
715
+ body,
716
+ }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
717
+ return { content: [{ type: 'text', text }] };
718
+ }
719
+ const okEnvelope = formatRetrievalEnvelope({
720
+ status: 'ok',
721
+ method,
722
+ bestRelevance,
723
+ floor: effectiveFloor,
724
+ hits: results.length,
725
+ });
502
726
  const formatted = results.map((r, i) => formatResult(r, i)).join('\n\n---\n\n');
503
727
  const knowledgeBody = formatXmlResponse('knowledge', formatted);
504
728
  let text = composeResponseText({
729
+ fallbackWarning,
505
730
  runtimeWarning,
506
731
  staleWarning,
507
732
  indexEnvelope,
733
+ retrievalEnvelope: okEnvelope,
508
734
  body: knowledgeBody,
509
- }); // totem-ignore #1294 — composed from system-generated + XML-wrapped pieces
735
+ }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
510
736
  // Append a system warning when the payload is large enough to risk context pressure
511
737
  if (text.length > config.contextWarningThreshold) {
512
738
  text +=
@@ -520,21 +746,27 @@ async function performSearch(query, typeFilter, maxResults, boundary) {
520
746
  * Compose the final response text by stacking diagnostics on top of the
521
747
  * knowledge body. Order (outermost → innermost):
522
748
  *
523
- * 1. runtime warning (per-call store failures from federatedSearch)
524
- * 2. STALE warning (knowledge index >7 days old; mmnto-ai/totem#2029)
525
- * 3. index-meta envelope (always-present freshness metadata)
526
- * 4. body (the wrapped `<knowledge>` block OR "no results")
749
+ * 1. fallback warning (embedder down keyword-only; mmnto-ai/totem#2463)
750
+ * 2. runtime warning (per-call store failures from federatedSearch)
751
+ * 3. STALE warning (knowledge index >7 days old; mmnto-ai/totem#2029)
752
+ * 4. index-meta envelope (always-present freshness metadata)
753
+ * 5. retrieval envelope (machine-parsable outcome; mmnto-ai/totem#2463) —
754
+ * emitted directly below <index-meta> so both parse as adjacent XML lines
755
+ * 6. body (the wrapped `<knowledge>` block OR "no results")
527
756
  *
528
757
  * Pieces are joined by blank lines so each is its own logical block in
529
758
  * the agent's view. Null pieces are omitted; the body is required.
530
759
  */
531
760
  function composeResponseText(parts) {
532
761
  const blocks = [];
762
+ if (parts.fallbackWarning)
763
+ blocks.push(parts.fallbackWarning);
533
764
  if (parts.runtimeWarning)
534
765
  blocks.push(parts.runtimeWarning);
535
766
  if (parts.staleWarning)
536
767
  blocks.push(parts.staleWarning);
537
768
  blocks.push(parts.indexEnvelope);
769
+ blocks.push(parts.retrievalEnvelope);
538
770
  blocks.push(parts.body);
539
771
  return blocks.join('\n\n');
540
772
  }
@@ -566,11 +798,23 @@ export function registerSearchKnowledge(server) {
566
798
  return trimmed === '' ? undefined : trimmed;
567
799
  }, z.string().optional())
568
800
  .describe('Partition name, linked-index name, or file path prefix to scope results. Resolution order: (1) configured partition names (e.g., "core", "cli", "mcp") → primary index, prefix-filtered; (2) linked-index names from linkedIndexes config (e.g., "strategy") → routes only to that cross-repo index; (3) raw path prefixes (e.g., "src/components/") → primary, prefix-filtered. When omitted, search federates across primary + all linked indexes, merging by semantic score. Blank or whitespace-only values are normalized to "omitted" (federated default).'),
801
+ // mmnto-ai/totem#2463: per-call relevance floor override. Floors on the
802
+ // true vector-leg relevance (0..1), NOT the displayed RRF score. Below
803
+ // it, the tool reports status="no_useful_hits" and discloses the
804
+ // below-floor candidates instead of returning noise. Overrides the
805
+ // config `searchRelevanceFloor`; the retrieval-envelope always reports
806
+ // the effective floor.
807
+ min_relevance: z
808
+ .number()
809
+ .min(0)
810
+ .max(1)
811
+ .optional()
812
+ .describe('Minimum per-hit relevance (0..1, vector-leg similarity) to treat results as useful. Overrides the configured searchRelevanceFloor. Below it, status is "no_useful_hits" with the below-floor candidates disclosed.'),
569
813
  },
570
814
  annotations: {
571
815
  readOnlyHint: true,
572
816
  },
573
- }, async ({ query, type_filter, max_results, boundary }) => {
817
+ }, async ({ query, type_filter, max_results, boundary, min_relevance }) => {
574
818
  const start = Date.now();
575
819
  // A.3.a: emit `mcp_call` activity event to the Trap Ledger. Fire-and-forget;
576
820
  // the ledger write must not block or break the tool call (Tenet 4 + sensor
@@ -589,6 +833,7 @@ export function registerSearchKnowledge(server) {
589
833
  try {
590
834
  const { projectRoot, config } = await getContext();
591
835
  setLogDir(path.join(projectRoot, config.totemDir));
836
+ // totem-context: best-effort log-dir init — the catch below records the failure via logSearch and must not block the tool call.
592
837
  }
593
838
  catch (err) {
594
839
  // Non-fatal — logging just won't write to disk. Record the failure.
@@ -618,14 +863,15 @@ export function registerSearchKnowledge(server) {
618
863
  const linkedStoresWarning = await runFirstLinkedStoresCheck();
619
864
  let result;
620
865
  try {
621
- result = await performSearch(query, type_filter, max_results, boundary);
866
+ result = await performSearch(query, type_filter, max_results, boundary, min_relevance);
867
+ // totem-context: the catch below is not a silent swallow; a failed reconnect+retry is surfaced to the agent as an isError ToolResult.
622
868
  }
623
869
  catch (originalErr) {
624
870
  // Any LanceDB error could indicate a stale handle (e.g. files deleted
625
871
  // during a full sync rebuild). Reconnect and retry once before failing.
626
872
  try {
627
873
  await reconnectStore();
628
- result = await performSearch(query, type_filter, max_results, boundary);
874
+ result = await performSearch(query, type_filter, max_results, boundary, min_relevance);
629
875
  }
630
876
  catch (retryErr) {
631
877
  // Retry failed — report both errors for diagnostics
@@ -653,6 +899,14 @@ export function registerSearchKnowledge(server) {
653
899
  const resultText = result.content[0]?.text ?? '';
654
900
  const scoreMatches = [...resultText.matchAll(/\*\*Score:\*\* ([\d.]+)/g)];
655
901
  const topScore = scoreMatches.length > 0 ? parseFloat(scoreMatches[0][1]) : null;
902
+ // mmnto-ai/totem#2463: record best relevance alongside topScore. Parsed
903
+ // from the retrieval-envelope's bestRelevance attribute (same derive-
904
+ // from-response-text pattern as topScore); "n/a" → null (no signal).
905
+ const relevanceMatch = resultText.match(/<retrieval-envelope[^>]*\bbestRelevance="([^"]+)"/);
906
+ const bestRelevanceRaw = relevanceMatch?.[1];
907
+ const topRelevance = bestRelevanceRaw !== undefined && bestRelevanceRaw !== 'n/a'
908
+ ? parseFloat(bestRelevanceRaw)
909
+ : null;
656
910
  // Log error responses (e.g., the broken-linked-boundary path at
657
911
  // performSearch Case 3) as errors instead of zero-result successes,
658
912
  // so routing failures are visible in search-log.jsonl. Without this
@@ -679,6 +933,7 @@ export function registerSearchKnowledge(server) {
679
933
  resultCount: scoreMatches.length,
680
934
  durationMs: Date.now() - start,
681
935
  topScore,
936
+ topRelevance,
682
937
  });
683
938
  }
684
939
  // Prepend health warning and linked-stores warning to the first search
@@ -1 +1 @@
1
- {"version":3,"file":"search-knowledge.js","sourceRoot":"","sources":["../../src/tools/search-knowledge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-knowledge.js","sourceRoot":"","sources":["../../src/tools/search-knowledge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAGlC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,MAAM,cAAc,CAAC;AAEjF,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAiB/F,SAAS,cAAc;IACrB,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,CAAC;AAC9C,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAe;IACxC,OAAO,GAAG,CAAC,OAAO,KAAK,IAAI,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC;AACvD,CAAC;AAED,MAAM,kBAAkB,GAAG,GAAG,CAAC;AAE/B,2EAA2E;AAC3E,IAAI,oBAAoB,GAAG,KAAK,CAAC;AACjC,wFAAwF;AACxF,IAAI,0BAA0B,GAAG,KAAK,CAAC;AAEvC;;;;GAIG;AACH,MAAM,UAAU,kBAAkB;IAChC,oBAAoB,GAAG,KAAK,CAAC;IAC7B,0BAA0B,GAAG,KAAK,CAAC;AACrC,CAAC;AAED;;;;;;;;;;GAUG;AACH,KAAK,UAAU,yBAAyB;IACtC,IAAI,0BAA0B;QAAE,OAAO,IAAI,CAAC;IAE5C,IAAI,CAAC;QACH,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;QACrD,kEAAkE;QAClE,sEAAsE;QACtE,+DAA+D;QAC/D,4DAA4D;QAC5D,0BAA0B,GAAG,IAAI,CAAC;QAClC,IAAI,qBAAqB,CAAC,IAAI,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QAElD,oEAAoE;QACpE,kEAAkE;QAClE,qEAAqE;QACrE,kEAAkE;QAClE,MAAM,KAAK,GAAa;YACtB,4BAA4B,qBAAqB,CAAC,IAAI,iCAAiC;YACvF,EAAE;YACF,8KAA8K;YAC9K,EAAE;SACH,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,qBAAqB,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1D,KAAK,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;QACpC,CAAC;QACD,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,qEAAqE;QACrE,uEAAuE;QACvE,sDAAsD;QACtD,SAAS,CAAC;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK,EAAE,8BAA8B;YACrC,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,+BAA+B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SACzF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,KAAK,UAAU,wBAAwB;IACrC,IAAI,oBAAoB;QAAE,OAAO,IAAI,CAAC;IAEtC,IAAI,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;QACrC,MAAM,MAAM,GAAsB,MAAM,KAAK,CAAC,WAAW,EAAE,CAAC;QAE5D,oEAAoE;QACpE,oCAAoC;QACpC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,oBAAoB,GAAG,IAAI,CAAC;YAC5B,OAAO,IAAI,CAAC;QACd,CAAC;QAED,oEAAoE;QACpE,qEAAqE;QACrE,qEAAqE;QACrE,kEAAkE;QAClE,4DAA4D;QAC5D,iEAAiE;QACjE,mEAAmE;QACnE,kEAAkE;QAClE,gDAAgD;QAChD,IAAI,CAAC,MAAM,CAAC,cAAc,IAAI,MAAM,CAAC,gBAAgB,KAAK,IAAI,EAAE,CAAC;YAC/D,MAAM,KAAK,GAAG;gBACZ,iCAAiC,MAAM,CAAC,gBAAgB,qDAAqD,MAAM,CAAC,kBAAkB,eAAe;gBACrJ,EAAE;gBACF,mFAAmF;gBACnF,2CAA2C;gBAC3C,EAAE;gBACF,6FAA6F;aAC9F,CAAC;YACF,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/C,CAAC;QAED,oEAAoE;QACpE,mEAAmE;QACnE,0DAA0D;QAC1D,oBAAoB,GAAG,IAAI,CAAC;QAC5B,MAAM,KAAK,GAAa,CAAC,+BAA+B,CAAC,CAAC;QAC1D,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;QAC3B,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAExE,OAAO,mBAAmB,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,kFAAkF;QAClF,SAAS,CAAC;YACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,KAAK,EAAE,uBAAuB;YAC9B,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,CAAC;YACb,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,wBAAwB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;SAClF,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,YAAY,CAAC,CAAe,EAAE,KAAa;IAClD,sEAAsE;IACtE,0EAA0E;IAC1E,wDAAwD;IACxD,MAAM,YAAY,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IAC7E,uEAAuE;IACvE,8EAA8E;IAC9E,2EAA2E;IAC3E,wEAAwE;IACxE,4EAA4E;IAC5E,sEAAsE;IACtE,MAAM,cAAc,GAClB,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ;QAC7B,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;QACxB,CAAC,CAAC,CAAC,CAAC,YAAY,KAAK,KAAK;YACxB,CAAC,CAAC,qBAAqB;YACvB,CAAC,CAAC,KAAK,CAAC;IACd,yEAAyE;IACzE,qEAAqE;IACrE,wEAAwE;IACxE,yEAAyE;IACzE,+CAA+C;IAC/C,OAAO,CACL,OAAO,KAAK,GAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,IAAI,KAAK;QACjD,aAAa,CAAC,CAAC,gBAAgB,iBAAiB,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,cAAc,MAAM;QAC3G,CAAC,CAAC,OAAO,CACV,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,KAAK,UAAU,eAAe,CAC5B,KAAa,EACb,UAAmC,EACnC,aAAqB,EACrB,UAAkB,EAClB,QAAoB,EACpB,aAAyB;IAEzB,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;IAEjE,2EAA2E;IAC3E,wEAAwE;IACxE,wEAAwE;IACxE,0DAA0D;IAC1D,uEAAuE;IACvE,sEAAsE;IACtE,sEAAsE;IACtE,0EAA0E;IAC1E,EAAE;IACF,wEAAwE;IACxE,uEAAuE;IACvE,sEAAsE;IACtE,uCAAuC;IACvC,MAAM,eAAe,GAAG,YAAY,CAAC,IAAI,GAAG,CAAC,CAAC;IAC9C,MAAM,cAAc,GAAG,eAAe;QACpC,CAAC,CAAC,YAAY;aACT,MAAM,CAAC;YACN,KAAK;YACL,UAAU;YACV,UAAU,EAAE,aAAa;YACzB,gBAAgB,EAAE,IAAI;YACtB,aAAa;SACd,CAAC;aACD,KAAK,CAAC,KAAK,EAAE,GAAY,EAAE,EAAE;YAC5B,MAAM,QAAQ,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClE,IAAI,CAAC;gBACH,MAAM,YAAY,CAAC,SAAS,EAAE,CAAC;gBAC/B,OAAO,MAAM,YAAY,CAAC,MAAM,CAAC;oBAC/B,KAAK;oBACL,UAAU;oBACV,UAAU,EAAE,aAAa;oBACzB,gBAAgB,EAAE,IAAI;oBACtB,aAAa;iBACd,CAAC,CAAC;gBACH,uLAAuL;YACzL,CAAC;YAAC,OAAO,QAAQ,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjF,MAAM,WAAW,GAAG,2BAA2B,QAAQ,sBAAsB,QAAQ,GAAG,CAAC;gBACzF,SAAS,CAAC;oBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK,EAAE,+BAA+B;oBACtC,WAAW,EAAE,CAAC;oBACd,UAAU,EAAE,CAAC;oBACb,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,iBAAiB,WAAW,EAAE;iBACtC,CAAC,CAAC;gBACH,QAAQ,CAAC,OAAO,GAAG,WAAW,CAAC;gBAC/B,OAAO,EAAoB,CAAC;YAC9B,CAAC;QACH,CAAC,CAAC;QACN,CAAC,CAAC,YAAY,CAAC,MAAM,CAAC;YAClB,KAAK;YACL,UAAU;YACV,UAAU,EAAE,aAAa;YACzB,gBAAgB,EAAE,IAAI;YACtB,aAAa;SACd,CAAC,CAAC;IAEP,qEAAqE;IACrE,gEAAgE;IAChE,kEAAkE;IAClE,sEAAsE;IACtE,qEAAqE;IACrE,wDAAwD;IACxD,MAAM,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAC3E,EAAE;SACC,MAAM,CAAC;QACN,KAAK;QACL,UAAU;QACV,UAAU,EAAE,aAAa;QACzB,gBAAgB,EAAE,IAAI;QACtB,aAAa;KACd,CAAC;SACD,KAAK,CAAC,KAAK,EAAE,GAAG,EAAE,EAAE;QACnB,MAAM,QAAQ,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAClE,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,SAAS,EAAE,CAAC;YACrB,OAAO,MAAM,EAAE,CAAC,MAAM,CAAC;gBACrB,KAAK;gBACL,UAAU;gBACV,UAAU,EAAE,aAAa;gBACzB,gBAAgB,EAAE,IAAI;gBACtB,aAAa;aACd,CAAC,CAAC;YACH,sLAAsL;QACxL,CAAC;QAAC,OAAO,QAAQ,EAAE,CAAC;YAClB,MAAM,QAAQ,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YACjF,MAAM,WAAW,GAAG,2BAA2B,QAAQ,sBAAsB,QAAQ,GAAG,CAAC;YACzF,SAAS,CAAC;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,KAAK,EAAE,gCAAgC,IAAI,EAAE;gBAC7C,WAAW,EAAE,CAAC;gBACd,UAAU,EAAE,CAAC;gBACb,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,iBAAiB,IAAI,KAAK,WAAW,EAAE;aAC/C,CAAC,CAAC;YACH,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;YACvC,OAAO,EAAoB,CAAC;QAC9B,CAAC;IACH,CAAC,CAAC,CACL,CAAC;IAEF,MAAM,CAAC,cAAc,EAAE,GAAG,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAC,cAAc,EAAE,GAAG,cAAc,CAAC,CAAC,CAAC;IAClG,MAAM,OAAO,GAAqB,CAAC,cAAc,EAAE,GAAG,aAAa,CAAC,CAAC;IAErE,oEAAoE;IACpE,kEAAkE;IAClE,kEAAkE;IAClE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,cAAc,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED,oEAAoE;IACpE,oEAAoE;IACpE,yCAAyC;IACzC,EAAE;IACF,8CAA8C;IAC9C,qDAAqD;IACrD,sCAAsC;IACtC,EAAE;IACF,oEAAoE;IACpE,uEAAuE;IACvE,kEAAkE;IAClE,oEAAoE;IACpE,oEAAoE;IACpE,iEAAiE;IACjE,2DAA2D;IAC3D,EAAE;IACF,sEAAsE;IACtE,8CAA8C;IAC9C,EAAE;IACF,4EAA4E;IAC5E,4EAA4E;IAC5E,wEAAwE;IACxE,8EAA8E;IAC9E,MAAM,gBAAgB,GAAG,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAmB,EAAE,CAAC;IACpC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;YACzB,QAAQ,CAAC,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,gBAAgB,GAAG,IAAI,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC,CAAC,CAAC;IACL,CAAC;IACD,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,CAAC;IACzD,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC;AACvC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,kBAAkB,CAAC,OAAuB;IACjD,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAChE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC7F,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAMvC;IACC,MAAM,IAAI,GAAG,MAAM,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;IACrF,OAAO,CACL,+BAA+B,MAAM,CAAC,MAAM,aAAa,MAAM,CAAC,MAAM,IAAI;QAC1E,kBAAkB,IAAI,YAAY,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,MAAM,CAAC,IAAI,MAAM,CACtF,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,aAAa,CAC1B,KAAa,EACb,UAAwB,EACxB,UAAmB,EACnB,QAAiB,EACjB,YAAqB;IAErB,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;IACxF,MAAM,UAAU,GAAG,UAAU,IAAI,CAAC,CAAC;IAEnC,gFAAgF;IAChF,0EAA0E;IAC1E,sEAAsE;IACtE,2EAA2E;IAC3E,+DAA+D;IAC/D,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnE,MAAM,aAAa,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAChB,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,KAAK,IAAI;QACjD,CAAC,CAAC,mBAAmB,CACjB,4CAA4C,UAAU,CAAC,SAAS,KAAK;YACnE,4GAA4G,CAC/G;QACH,CAAC,CAAC,IAAI,CAAC;IAEX,iEAAiE;IACjE,wEAAwE;IACxE,uEAAuE;IACvE,uEAAuE;IACvE,wEAAwE;IACxE,mEAAmE;IACnE,sCAAsC;IACtC,EAAE;IACF,yEAAyE;IACzE,mEAAmE;IACnE,0EAA0E;IAC1E,0DAA0D;IAC1D,MAAM,QAAQ,GAAe,cAAc,EAAE,CAAC;IAE9C,wDAAwD;IACxD,EAAE;IACF,uBAAuB;IACvB,wFAAwF;IACxF,+FAA+F;IAC/F,8FAA8F;IAC9F,0EAA0E;IAC1E,gEAAgE;IAChE,EAAE;IACF,sEAAsE;IACtE,gEAAgE;IAChE,6CAA6C;IAC7C,EAAE;IACF,uEAAuE;IACvE,mEAAmE;IACnE,uEAAuE;IACvE,uEAAuE;IACvE,oEAAoE;IACpE,sEAAsE;IACtE,sDAAsD;IACtD,8EAA8E;IAC9E,0EAA0E;IAC1E,0EAA0E;IAC1E,2DAA2D;IAC3D,IAAI,kBAAkB,GAAG,KAAK,CAAC;IAC/B,MAAM,aAAa,GAAG,GAAS,EAAE;QAC/B,kBAAkB,GAAG,IAAI,CAAC;IAC5B,CAAC,CAAC;IACF,IAAI,OAAuB,CAAC;IAC5B,IAAI,QAAQ,KAAK,SAAS,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5D,wDAAwD;QACxD,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;QACnD,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;YAClC,KAAK;YACL,UAAU;YACV,UAAU,EAAE,UAAU;YACtB,QAAQ,EAAE,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC;YACrC,gBAAgB,EAAE,IAAI;YACtB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QAChE,+DAA+D;QAC/D,EAAE;QACF,mEAAmE;QACnE,uEAAuE;QACvE,iEAAiE;QACjE,mEAAmE;QACnE,+DAA+D;QAC/D,mEAAmE;QACnE,mDAAmD;QACnD,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAE,CAAC;QAC3C,IAAI,CAAC;YACH,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;gBAC5B,KAAK;gBACL,UAAU;gBACV,UAAU,EAAE,UAAU;gBACtB,gBAAgB,EAAE,IAAI;gBACtB,aAAa;aACd,CAAC,CAAC;YACH,wMAAwM;QAC1M,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,QAAQ,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAClE,IAAI,CAAC;gBACH,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;gBACzB,OAAO,GAAG,MAAM,MAAM,CAAC,MAAM,CAAC;oBAC5B,KAAK;oBACL,UAAU;oBACV,UAAU,EAAE,UAAU;oBACtB,gBAAgB,EAAE,IAAI;oBACtB,aAAa;iBACd,CAAC,CAAC;gBACH,oLAAoL;YACtL,CAAC;YAAC,OAAO,QAAQ,EAAE,CAAC;gBAClB,MAAM,QAAQ,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;gBACjF,MAAM,SAAS,GAAG,mBAAmB,CACnC;oBACE,wCAAwC,QAAQ,WAAW;oBAC3D,EAAE;oBACF,2BAA2B,QAAQ,EAAE;oBACrC,4BAA4B,QAAQ,EAAE;oBACtC,EAAE;oBACF,wLAAwL;iBACzL,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;gBACF,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,sDAAsD;oBAC7G,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;SAAM,IAAI,QAAQ,KAAK,SAAS,IAAI,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzE,uEAAuE;QACvE,kEAAkE;QAClE,gEAAgE;QAChE,mDAAmD;QACnD,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACnD,MAAM,OAAO,GAAG,mBAAmB,CACjC;YACE,iBAAiB,QAAQ,uBAAuB,MAAM,IAAI,eAAe,EAAE;YAC3E,EAAE;YACF,yHAAyH;SAC1H,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;QACF,OAAO;YACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,sDAAsD;YAC3G,OAAO,EAAE,IAAI;SACd,CAAC;IACJ,CAAC;SAAM,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAClC,sEAAsE;QACtE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;QACnD,OAAO,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC;YAClC,KAAK;YACL,UAAU;YACV,UAAU,EAAE,UAAU;YACtB,QAAQ;YACR,gBAAgB,EAAE,IAAI;YACtB,aAAa;SACd,CAAC,CAAC;IACL,CAAC;SAAM,CAAC;QACN,sEAAsE;QACtE,oEAAoE;QACpE,iEAAiE;QACjE,6DAA6D;QAC7D,OAAO,GAAG,MAAM,eAAe,CAC7B,KAAK,EACL,UAAU,EACV,UAAU,EACV,UAAU,EACV,QAAQ,EACR,aAAa,CACd,CAAC;IACJ,CAAC;IAED,oEAAoE;IACpE,qEAAqE;IACrE,EAAE;IACF,kEAAkE;IAClE,qEAAqE;IACrE,qEAAqE;IACrE,yEAAyE;IACzE,EAAE;IACF,uEAAuE;IACvE,2EAA2E;IAC3E,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE;QAC3B,IAAI,iBAAiB,CAAC,QAAQ,CAAC;YAAE,OAAO,IAAI,CAAC;QAE7C,MAAM,WAAW,GAAa,EAAE,CAAC;QACjC,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC9B,WAAW,CAAC,IAAI,CAAC,gBAAgB,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC;QACvD,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,EAAE,CAAC;YACpD,WAAW,CAAC,IAAI,CAAC,OAAO,IAAI,KAAK,GAAG,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,YAAY,GAChB,+HAA+H,CAAC;QAElI,MAAM,aAAa,GAAG,QAAQ,CAAC,OAAO,KAAK,IAAI,CAAC;QAChD,MAAM,kBAAkB,GAAG,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;QAEhD,IAAI,OAAe,CAAC;QACpB,IAAI,aAAa,IAAI,kBAAkB,GAAG,CAAC,EAAE,CAAC;YAC5C,OAAO,GAAG,uCAAuC,kBAAkB,yCAAyC,CAAC;QAC/G,CAAC;aAAM,IAAI,aAAa,EAAE,CAAC;YACzB,OAAO,GAAG,sGAAsG,CAAC;QACnH,CAAC;aAAM,CAAC;YACN,OAAO,GAAG,qBAAqB,kBAAkB,uFAAuF,CAAC;QAC3I,CAAC;QAED,OAAO,mBAAmB,CAAC,CAAC,OAAO,EAAE,EAAE,EAAE,GAAG,WAAW,EAAE,EAAE,EAAE,YAAY,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACzF,CAAC,CAAC,EAAE,CAAC;IAEL,yEAAyE;IACzE,0EAA0E;IAC1E,EAAE;IACF,yEAAyE;IACzE,wEAAwE;IACxE,oEAAoE;IACpE,sEAAsE;IACtE,sBAAsB;IACtB,EAAE;IACF,sCAAsC;IACtC,wEAAwE;IACxE,qEAAqE;IACrE,6CAA6C;IAC7C,uEAAuE;IACvE,+DAA+D;IAC/D,uEAAuE;IACvE,mEAAmE;IACnE,+BAA+B;IAC/B,EAAE;IACF,uEAAuE;IACvE,qEAAqE;IACrE,qEAAqE;IACrE,MAAM,wBAAwB,GAC5B,QAAQ,KAAK,SAAS;QACtB,QAAQ,CAAC,OAAO,KAAK,IAAI;QACzB,QAAQ,CAAC,MAAM,CAAC,IAAI,KAAK,YAAY,CAAC,IAAI,CAAC;IAE7C,oEAAoE;IACpE,EAAE;IACF,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,wEAAwE;IACxE,kDAAkD;IAClD,MAAM,eAAe,GACnB,OAAO,MAAM,CAAC,oBAAoB,KAAK,QAAQ;QAC7C,CAAC,CAAC,MAAM,CAAC,oBAAoB;QAC7B,CAAC,CAAC,8BAA8B,CAAC;IACrC,MAAM,cAAc,GAAG,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,eAAe,CAAC;IACnF,2EAA2E;IAC3E,kEAAkE;IAClE,8CAA8C;IAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC;IAEhG,0EAA0E;IAC1E,6EAA6E;IAC7E,MAAM,eAAe,GAAG,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,YAAY,KAAK,KAAK,CAAC,CAAC;IAC5F,MAAM,eAAe,GAAG,eAAe;QACrC,CAAC,CAAC,mBAAmB,CACjB;YACE,iFAAiF;YACjF,EAAE;YACF,wPAAwP;SACzP,CAAC,IAAI,CAAC,IAAI,CAAC,CACb;QACH,CAAC,CAAC,IAAI,CAAC;IAET,4EAA4E;IAC5E,8EAA8E;IAC9E,4EAA4E;IAC5E,MAAM,UAAU,GAAG,OAAO;SACvB,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;SACvB,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC;IACrD,MAAM,kBAAkB,GAAG,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC;IACjD,MAAM,aAAa,GAAG,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAE1E,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACzB,IAAI,wBAAwB,EAAE,CAAC;YAC7B,OAAO;gBACL,OAAO,EAAE;oBACP;wBACE,IAAI,EAAE,MAAe;wBACrB,IAAI,EACF,cAAc;4BACd,qEAAqE,EAAE,oEAAoE;qBAC9I;iBACF;gBACD,OAAO,EAAE,IAAI;aACd,CAAC;QACJ,CAAC;QACD,MAAM,aAAa,GAAG,uBAAuB,CAAC;YAC5C,MAAM,EAAE,OAAO;YACf,MAAM;YACN,aAAa;YACb,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,CAAC;SACR,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,mBAAmB,CAAC,CAAC;QACjE,MAAM,IAAI,GAAG,mBAAmB,CAAC;YAC/B,eAAe;YACf,cAAc;YACd,YAAY;YACZ,aAAa;YACb,iBAAiB,EAAE,aAAa;YAChC,IAAI;SACL,CAAC,CAAC,CAAC,yFAAyF;QAC7F,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,2EAA2E;IAC3E,6EAA6E;IAC7E,sEAAsE;IACtE,uEAAuE;IACvE,4EAA4E;IAC5E,gCAAgC;IAChC,IAAI,kBAAkB,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,GAAG,cAAc,EAAE,CAAC;QACnF,MAAM,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;QAC3E,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC;QACxE,kEAAkE;QAClE,kEAAkE;QAClE,yBAAyB;QACzB,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;YAC7E,MAAM,KAAK,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,IAAI,GAAG,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC5F,OAAO,GAAG,CAAC,GAAG,CAAC,KAAK,KAAK,gBAAgB,GAAG,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,MAAM,UAAU,GAAG;YACjB,kFAAkF,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAC3J,GAAG,cAAc;SAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC7B,kEAAkE;YAClE,MAAM,kBAAkB,GAAG,uBAAuB,CAAC;gBACjD,MAAM,EAAE,gBAAgB;gBACxB,MAAM;gBACN,aAAa;gBACb,KAAK,EAAE,cAAc;gBACrB,IAAI,EAAE,CAAC;aACR,CAAC,CAAC;YACH,MAAM,IAAI,GAAG,iBAAiB,CAC5B,WAAW,EACX;gBACE,yCAAyC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,oBAAoB,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;gBAClH,EAAE;gBACF,UAAU;aACX,CAAC,IAAI,CAAC,IAAI,CAAC,CACb,CAAC;YACF,MAAM,IAAI,GAAG,mBAAmB,CAAC;gBAC/B,eAAe;gBACf,cAAc;gBACd,YAAY;gBACZ,aAAa;gBACb,iBAAiB,EAAE,kBAAkB;gBACrC,IAAI;aACL,CAAC,CAAC,CAAC,yFAAyF;YAC7F,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;QACxD,CAAC;QAED,kEAAkE;QAClE,0CAA0C;QAC1C,MAAM,aAAa,GAAG,uBAAuB,CAAC;YAC5C,MAAM,EAAE,IAAI;YACZ,MAAM;YACN,aAAa;YACb,KAAK,EAAE,cAAc;YACrB,IAAI,EAAE,WAAW,CAAC,MAAM;SACzB,CAAC,CAAC;QACH,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,iBAAiB,CAAC,WAAW,EAAE,eAAe,GAAG,aAAa,GAAG,UAAU,CAAC,CAAC;QAC1F,MAAM,IAAI,GAAG,mBAAmB,CAAC;YAC/B,eAAe;YACf,cAAc;YACd,YAAY;YACZ,aAAa;YACb,iBAAiB,EAAE,aAAa;YAChC,IAAI;SACL,CAAC,CAAC,CAAC,yFAAyF;QAC7F,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;IACxD,CAAC;IAED,MAAM,UAAU,GAAG,uBAAuB,CAAC;QACzC,MAAM,EAAE,IAAI;QACZ,MAAM;QACN,aAAa;QACb,KAAK,EAAE,cAAc;QACrB,IAAI,EAAE,OAAO,CAAC,MAAM;KACrB,CAAC,CAAC;IACH,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAEhF,MAAM,aAAa,GAAG,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAChE,IAAI,IAAI,GAAG,mBAAmB,CAAC;QAC7B,eAAe;QACf,cAAc;QACd,YAAY;QACZ,aAAa;QACb,iBAAiB,EAAE,UAAU;QAC7B,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC,CAAC,yFAAyF;IAE7F,oFAAoF;IACpF,IAAI,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,uBAAuB,EAAE,CAAC;QACjD,IAAI;YACF,MAAM;gBACN,mBAAmB,CACjB,sGAAsG;oBACpG,oHAAoH,CACvH,CAAC;IACN,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACxD,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,SAAS,mBAAmB,CAAC,KAO5B;IACC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,KAAK,CAAC,eAAe;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IAC9D,IAAI,KAAK,CAAC,cAAc;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IAC5D,IAAI,KAAK,CAAC,YAAY;QAAE,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;IACxD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;IACjC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACxB,OAAO,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,uBAAuB,CAAC,MAAiB;IACvD,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;QACE,WAAW,EAAE,2OAA2O;QACxP,WAAW,EAAE;YACX,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;YAC9C,WAAW,EAAE,CAAC;iBACX,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC;iBAC/B,QAAQ,EAAE;iBACV,QAAQ,CAAC,4DAA4D,CAAC;YACzE,WAAW,EAAE,CAAC;iBACX,MAAM,EAAE;iBACR,GAAG,EAAE;iBACL,QAAQ,EAAE;iBACV,GAAG,CAAC,kBAAkB,CAAC;iBACvB,QAAQ,EAAE;iBACV,QAAQ,CAAC,yDAAyD,kBAAkB,GAAG,CAAC;YAC3F,kEAAkE;YAClE,mEAAmE;YACnE,kEAAkE;YAClE,oEAAoE;YACpE,QAAQ,EAAE,CAAC;iBACR,UAAU,CAAC,CAAC,KAAK,EAAE,EAAE;gBACpB,IAAI,OAAO,KAAK,KAAK,QAAQ;oBAAE,OAAO,KAAK,CAAC;gBAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;gBAC7B,OAAO,OAAO,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC;YAC9C,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC;iBACxB,QAAQ,CACP,kiBAAkiB,CACniB;YACH,wEAAwE;YACxE,uEAAuE;YACvE,iEAAiE;YACjE,mEAAmE;YACnE,uEAAuE;YACvE,uBAAuB;YACvB,aAAa,EAAE,CAAC;iBACb,MAAM,EAAE;iBACR,GAAG,CAAC,CAAC,CAAC;iBACN,GAAG,CAAC,CAAC,CAAC;iBACN,QAAQ,EAAE;iBACV,QAAQ,CACP,oNAAoN,CACrN;SACJ;QACD,WAAW,EAAE;YACX,YAAY,EAAE,IAAI;SACnB;KACF,EACD,KAAK,EAAE,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,EAAE,EAAE,EAAE;QACrE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACzB,6EAA6E;QAC7E,2EAA2E;QAC3E,iEAAiE;QACjE,kEAAkE;QAClE,wEAAwE;QACxE,EAAE;QACF,uEAAuE;QACvE,mEAAmE;QACnE,sCAAsC;QACtC,UAAU,CAAC,kBAAkB,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YAC3C,KAAK,GAAG,CAAC;QACX,CAAC,CAAC,CAAC;QACH,IAAI,CAAC;YACH,uFAAuF;YACvF,IAAI,CAAC;gBACH,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,CAAC;gBACnD,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;gBACnD,gIAAgI;YAClI,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,oEAAoE;gBACpE,SAAS,CAAC;oBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK,EAAE,sBAAsB;oBAC7B,WAAW,EAAE,CAAC;oBACd,UAAU,EAAE,CAAC;oBACb,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,0BAA0B,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE;iBACpF,CAAC,CAAC;YACL,CAAC;YAED,gFAAgF;YAChF,MAAM,aAAa,GAAG,MAAM,wBAAwB,EAAE,CAAC;YAEvD,+EAA+E;YAC/E,IAAI,aAAa,IAAI,aAAa,CAAC,QAAQ,CAAC,oBAAoB,CAAC,EAAE,CAAC;gBAClE,OAAO;oBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,uFAAuF;oBAClJ,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;YAED,4EAA4E;YAC5E,wEAAwE;YACxE,0EAA0E;YAC1E,oEAAoE;YACpE,qEAAqE;YACrE,MAAM,mBAAmB,GAAG,MAAM,yBAAyB,EAAE,CAAC;YAE9D,IAAI,MAAkB,CAAC;YACvB,IAAI,CAAC;gBACH,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACvF,sIAAsI;YACxI,CAAC;YAAC,OAAO,WAAW,EAAE,CAAC;gBACrB,sEAAsE;gBACtE,wEAAwE;gBACxE,IAAI,CAAC;oBACH,MAAM,cAAc,EAAE,CAAC;oBACvB,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,QAAQ,EAAE,aAAa,CAAC,CAAC;gBACzF,CAAC;gBAAC,OAAO,QAAQ,EAAE,CAAC;oBAClB,oDAAoD;oBACpD,MAAM,eAAe,GACnB,WAAW,YAAY,KAAK,CAAC,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;oBAC3E,MAAM,YAAY,GAAG,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;oBAErF,MAAM,SAAS,GACb,eAAe,KAAK,YAAY;wBAC9B,CAAC,CAAC,gCAAgC,eAAe,EAAE;wBACnD,CAAC,CAAC,+CAA+C,eAAe,wCAAwC,YAAY,EAAE,CAAC;oBAE3H,SAAS,CAAC;wBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBACnC,KAAK;wBACL,UAAU,EAAE,WAAW;wBACvB,WAAW,EAAE,CAAC;wBACd,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;wBAC9B,QAAQ,EAAE,IAAI;wBACd,KAAK,EAAE,SAAS;qBACjB,CAAC,CAAC;oBAEH,OAAO;wBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAe,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;wBACrD,OAAO,EAAE,IAAI;qBACd,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC;YACjD,MAAM,YAAY,GAAG,CAAC,GAAG,UAAU,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAC,CAAC;YAC1E,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC,CAAE,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;YAEnF,wEAAwE;YACxE,sEAAsE;YACtE,qEAAqE;YACrE,MAAM,cAAc,GAAG,UAAU,CAAC,KAAK,CACrC,mDAAmD,CACpD,CAAC;YACF,MAAM,gBAAgB,GAAG,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7C,MAAM,YAAY,GAChB,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,KAAK;gBAC1D,CAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC;gBAC9B,CAAC,CAAC,IAAI,CAAC;YAEX,gEAAgE;YAChE,oEAAoE;YACpE,oEAAoE;YACpE,gEAAgE;YAChE,2CAA2C;YAC3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,SAAS,CAAC;oBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK;oBACL,UAAU,EAAE,WAAW;oBACvB,QAAQ;oBACR,WAAW,EAAE,CAAC;oBACd,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;oBAC9B,QAAQ,EAAE,IAAI;oBACd,KAAK,EAAE,UAAU;iBAClB,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC;oBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,KAAK;oBACL,UAAU,EAAE,WAAW;oBACvB,QAAQ;oBACR,WAAW,EAAE,YAAY,CAAC,MAAM;oBAChC,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;oBAC9B,QAAQ;oBACR,YAAY;iBACb,CAAC,CAAC;YACL,CAAC;YAED,uEAAuE;YACvE,iEAAiE;YACjE,uEAAuE;YACvE,MAAM,QAAQ,GAAa,EAAE,CAAC;YAC9B,IAAI,aAAa;gBAAE,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YAChD,IAAI,mBAAmB;gBAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,wCAAwC;YACrG,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;oBAClB,IAAI,EAAE,MAAe;oBACrB,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,0DAA0D;iBAC3H,CAAC;YACJ,CAAC;YAED,OAAO,MAAM,CAAC;QAChB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,mEAAmE;YACnE,MAAM,YAAY,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACtE,SAAS,CAAC;gBACR,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,KAAK;gBACL,UAAU,EAAE,WAAW;gBACvB,WAAW,EAAE,CAAC;gBACd,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK;gBAC9B,QAAQ,EAAE,IAAI;gBACd,KAAK,EAAE,YAAY;aACpB,CAAC,CAAC;YACH,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
@@ -15,6 +15,13 @@ let mockHealthCheckThrows = false;
15
15
  let mockSearchThrows = false;
16
16
  let mockSearchThrowsOnce = false;
17
17
  let mockReconnectCalled = false;
18
+ /**
19
+ * mmnto-ai/totem#2494 round 2: when true, the mocked primary `search` invokes
20
+ * `options.onFtsFallback` before returning — simulating LanceStore's keyword-
21
+ * only degradation engaging (including the zero-row case, where no fts-stamped
22
+ * result exists to infer engagement from).
23
+ */
24
+ let mockSimulateFtsFallback = false;
18
25
  /**
19
26
  * mmnto/totem#1295 CR minor: number of upcoming `getContext()` calls
20
27
  * that should throw before getContext starts returning normally.
@@ -32,6 +39,8 @@ let mockLinkedStoreInitErrors = new Map();
32
39
  * verifies the call site fires with the correct activity_name.
33
40
  */
34
41
  let mockLogMcpCall;
42
+ /** mmnto-ai/totem#2463: captured logSearch spy so tests can assert topRelevance. */
43
+ let mockLogSearch;
35
44
  vi.mock('@modelcontextprotocol/sdk/server/mcp.js', () => ({
36
45
  McpServer: class {
37
46
  },
@@ -53,10 +62,11 @@ vi.mock('../context.js', () => ({
53
62
  totemDir: '.totem',
54
63
  lanceDir: '.totem/.lance',
55
64
  contextWarningThreshold: 50_000,
65
+ searchRelevanceFloor: 0.4,
56
66
  partitions: { core: ['packages/core/'] },
57
67
  },
58
68
  store: {
59
- search: vi.fn(async () => {
69
+ search: vi.fn(async (options = {}) => {
60
70
  if (mockSearchThrows) {
61
71
  throw new Error('LanceDB search failed');
62
72
  }
@@ -64,6 +74,9 @@ vi.mock('../context.js', () => ({
64
74
  mockSearchThrowsOnce = false;
65
75
  throw new Error('Stale handle error');
66
76
  }
77
+ if (mockSimulateFtsFallback) {
78
+ options.onFtsFallback?.();
79
+ }
67
80
  // Fill in absoluteFilePath from the fake projectRoot when the
68
81
  // test didn't set one explicitly — mirrors real LanceStore.
69
82
  return mockSearchResults.map((r) => ({
@@ -150,10 +163,12 @@ describe('search_knowledge', () => {
150
163
  mockSearchThrows = false;
151
164
  mockSearchThrowsOnce = false;
152
165
  mockReconnectCalled = false;
166
+ mockSimulateFtsFallback = false;
153
167
  mockGetContextFailuresRemaining = 0;
154
168
  mockLinkedStores = new Map();
155
169
  mockLinkedStoreInitErrors = new Map();
156
170
  mockLogMcpCall = vi.fn(async () => { });
171
+ mockLogSearch = vi.fn();
157
172
  // Reset modules to clear the firstHealthCheckDone flag
158
173
  vi.resetModules();
159
174
  // Re-apply all mocks after module reset
@@ -178,10 +193,11 @@ describe('search_knowledge', () => {
178
193
  totemDir: '.totem',
179
194
  lanceDir: '.totem/.lance',
180
195
  contextWarningThreshold: 50_000,
196
+ searchRelevanceFloor: 0.4,
181
197
  partitions: { core: ['packages/core/'] },
182
198
  },
183
199
  store: {
184
- search: vi.fn(async () => {
200
+ search: vi.fn(async (options = {}) => {
185
201
  if (mockSearchThrows) {
186
202
  throw new Error('LanceDB search failed');
187
203
  }
@@ -189,6 +205,9 @@ describe('search_knowledge', () => {
189
205
  mockSearchThrowsOnce = false;
190
206
  throw new Error('Stale handle error');
191
207
  }
208
+ if (mockSimulateFtsFallback) {
209
+ options.onFtsFallback?.();
210
+ }
192
211
  // Fill in absoluteFilePath from the fake projectRoot when
193
212
  // the test didn't set one explicitly — mirrors LanceStore.
194
213
  return mockSearchResults.map((r) => ({
@@ -231,7 +250,7 @@ describe('search_knowledge', () => {
231
250
  formatIndexEnvelope: vi.fn((_state) => '<index-meta status="mocked" />'),
232
251
  }));
233
252
  vi.doMock('../search-log.js', () => ({
234
- logSearch: vi.fn(),
253
+ logSearch: mockLogSearch,
235
254
  setLogDir: vi.fn(),
236
255
  }));
237
256
  vi.doMock('../ledger-writer.js', () => ({
@@ -1224,5 +1243,273 @@ describe('search_knowledge', () => {
1224
1243
  expect(result.content[0].text).toContain('No results found');
1225
1244
  });
1226
1245
  });
1246
+ // --- Retrieval envelope + relevance floor (mmnto-ai/totem#2463) ---
1247
+ describe('retrieval envelope + relevance floor (mmnto-ai/totem#2463)', () => {
1248
+ // The whole outcome must parse from the response text with ONE regex
1249
+ // (the wrapper-agent contract).
1250
+ const ENVELOPE_RE = /<retrieval-envelope status="(\w+)" method="(\w+)" bestRelevance="([^"]+)" floor="([^"]+)" hits="(\d+)" \/>/;
1251
+ it('emits status="ok" with bestRelevance, floor, and per-hit Relevance', async () => {
1252
+ mockSearchResults = [
1253
+ {
1254
+ label: 'A',
1255
+ type: 'code',
1256
+ filePath: 'src/a.ts',
1257
+ score: 0.016,
1258
+ relevance: 0.83,
1259
+ searchMethod: 'hybrid',
1260
+ content: 'alpha body',
1261
+ },
1262
+ {
1263
+ label: 'B',
1264
+ type: 'code',
1265
+ filePath: 'src/b.ts',
1266
+ score: 0.016,
1267
+ relevance: 0.61,
1268
+ searchMethod: 'hybrid',
1269
+ content: 'beta body',
1270
+ },
1271
+ ];
1272
+ const result = (await handle({ query: 'test' }));
1273
+ const text = result.content[0].text;
1274
+ const m = text.match(ENVELOPE_RE);
1275
+ expect(m).not.toBeNull();
1276
+ expect(m[1]).toBe('ok');
1277
+ expect(m[2]).toBe('hybrid');
1278
+ expect(m[3]).toBe('0.830'); // max over hit relevances
1279
+ expect(m[4]).toBe('0.400'); // configured floor (mock config)
1280
+ expect(m[5]).toBe('2');
1281
+ // Both Score (RRF, ordering) and Relevance (true signal) are rendered.
1282
+ expect(text).toContain('**Relevance:** 0.830');
1283
+ expect(text).toContain('**Relevance:** 0.610');
1284
+ // status=ok returns full content.
1285
+ expect(text).toContain('alpha body');
1286
+ });
1287
+ it('emits the retrieval-envelope directly below the <index-meta> line', async () => {
1288
+ mockSearchResults = [
1289
+ {
1290
+ label: 'A',
1291
+ type: 'code',
1292
+ filePath: 'src/a.ts',
1293
+ score: 0.016,
1294
+ relevance: 0.9,
1295
+ searchMethod: 'hybrid',
1296
+ content: 'body',
1297
+ },
1298
+ ];
1299
+ const result = (await handle({ query: 'test' }));
1300
+ const text = result.content[0].text;
1301
+ const idxMeta = text.indexOf('<index-meta');
1302
+ const idxEnv = text.indexOf('<retrieval-envelope');
1303
+ expect(idxMeta).toBeGreaterThanOrEqual(0);
1304
+ expect(idxEnv).toBeGreaterThan(idxMeta);
1305
+ // Only whitespace separates the two envelope lines.
1306
+ const between = text.slice(text.indexOf('/>', idxMeta) + 2, idxEnv);
1307
+ expect(between.trim()).toBe('');
1308
+ });
1309
+ it('reports no_useful_hits and discloses below-floor candidates (path + relevance, NO content)', async () => {
1310
+ mockSearchResults = [
1311
+ {
1312
+ label: 'Weak A',
1313
+ type: 'code',
1314
+ filePath: 'src/a.ts',
1315
+ score: 0.016,
1316
+ relevance: 0.2,
1317
+ searchMethod: 'hybrid',
1318
+ content: 'SECRET_BODY_A',
1319
+ },
1320
+ {
1321
+ label: 'Weak B',
1322
+ type: 'code',
1323
+ filePath: 'src/b.ts',
1324
+ score: 0.016,
1325
+ relevance: 0.15,
1326
+ searchMethod: 'hybrid',
1327
+ content: 'SECRET_BODY_B',
1328
+ },
1329
+ ];
1330
+ const result = (await handle({ query: 'test' }));
1331
+ const text = result.content[0].text;
1332
+ const m = text.match(ENVELOPE_RE);
1333
+ expect(m[1]).toBe('no_useful_hits');
1334
+ expect(m[3]).toBe('0.200'); // best of the below-floor set
1335
+ expect(m[5]).toBe('0'); // hits counts RETURNED hits — candidates are disclosed, not returned
1336
+ // Candidates disclosed by path + relevance — never silently dropped.
1337
+ expect(text).toContain('/fake/project/src/a.ts');
1338
+ expect(text).toContain('relevance 0.200');
1339
+ expect(text).toContain('relevance 0.150');
1340
+ // ...but their content is withheld.
1341
+ expect(text).not.toContain('SECRET_BODY_A');
1342
+ expect(text).not.toContain('SECRET_BODY_B');
1343
+ });
1344
+ it('returns floor-exempt keyword hits from a mixed batch and discloses only the withheld signal-bearing ones', async () => {
1345
+ // greptile P1 (mmnto-ai/totem#2494 round 2): a keyword-only hit has no
1346
+ // comparable relevance signal — it must never be withheld because a
1347
+ // vector-leg sibling scored below the floor.
1348
+ mockSearchResults = [
1349
+ {
1350
+ label: 'Keyword hit',
1351
+ type: 'code',
1352
+ filePath: 'src/k.ts',
1353
+ score: 0.016,
1354
+ searchMethod: 'fts',
1355
+ content: 'KEYWORD_BODY',
1356
+ },
1357
+ {
1358
+ label: 'Weak vector hit',
1359
+ type: 'code',
1360
+ filePath: 'src/w.ts',
1361
+ score: 0.016,
1362
+ relevance: 0.2,
1363
+ searchMethod: 'hybrid',
1364
+ content: 'WEAK_VECTOR_BODY',
1365
+ },
1366
+ ];
1367
+ const result = (await handle({ query: 'test' }));
1368
+ const text = result.content[0].text;
1369
+ const m = text.match(ENVELOPE_RE);
1370
+ expect(m[1]).toBe('ok'); // exempt hits ARE returned
1371
+ expect(m[3]).toBe('0.200'); // bestRelevance still reports the below-floor max
1372
+ expect(m[5]).toBe('1'); // hits counts RETURNED hits (the exempt subset)
1373
+ // The keyword hit's content is returned...
1374
+ expect(text).toContain('KEYWORD_BODY');
1375
+ // ...the below-floor vector hit is disclosed (path + relevance), content withheld.
1376
+ expect(text).toContain('/fake/project/src/w.ts');
1377
+ expect(text).toContain('relevance 0.200');
1378
+ expect(text).not.toContain('WEAK_VECTOR_BODY');
1379
+ });
1380
+ it('reports method="fts" + the keyword-only warning when the fallback returns zero rows', async () => {
1381
+ // greptile P1 (mmnto-ai/totem#2494 round 2): a zero-row fallback leaves
1382
+ // no fts-stamped hit — engagement must surface via the out-of-band
1383
+ // callback, or an embedder outage masquerades as a healthy empty search.
1384
+ mockSimulateFtsFallback = true;
1385
+ mockSearchResults = [];
1386
+ const result = (await handle({ query: 'test' }));
1387
+ const text = result.content[0].text;
1388
+ expect(result.isError).toBeUndefined();
1389
+ const m = text.match(ENVELOPE_RE);
1390
+ expect(m[1]).toBe('empty');
1391
+ expect(m[2]).toBe('fts'); // NOT "hybrid" — the outage is visible
1392
+ expect(text).toContain('KEYWORD-ONLY');
1393
+ expect(text).toContain('No results found');
1394
+ });
1395
+ it('never fires the floor when no hit carries a relevance signal (bestRelevance n/a)', async () => {
1396
+ // Low RRF score but NO relevance signal → must NOT become no_useful_hits.
1397
+ mockSearchResults = [
1398
+ {
1399
+ label: 'K',
1400
+ type: 'code',
1401
+ filePath: 'src/k.ts',
1402
+ score: 0.016,
1403
+ searchMethod: 'fts',
1404
+ content: 'keyword body',
1405
+ },
1406
+ ];
1407
+ const result = (await handle({ query: 'test' }));
1408
+ const text = result.content[0].text;
1409
+ const m = text.match(ENVELOPE_RE);
1410
+ expect(m[1]).toBe('ok');
1411
+ expect(m[3]).toBe('n/a');
1412
+ expect(text).toContain('keyword body'); // content returned, not withheld
1413
+ });
1414
+ it('min_relevance overrides the configured floor in both directions', async () => {
1415
+ mockSearchResults = [
1416
+ {
1417
+ label: 'Mid',
1418
+ type: 'code',
1419
+ filePath: 'src/m.ts',
1420
+ score: 0.016,
1421
+ relevance: 0.3,
1422
+ searchMethod: 'hybrid',
1423
+ content: 'mid body',
1424
+ },
1425
+ ];
1426
+ // Config floor 0.4 → 0.3 is below → no_useful_hits, floor reported 0.400.
1427
+ const strict = (await handle({ query: 'test' }));
1428
+ const ms = strict.content[0].text.match(ENVELOPE_RE);
1429
+ expect(ms[1]).toBe('no_useful_hits');
1430
+ expect(ms[4]).toBe('0.400');
1431
+ // Override to 0.1 → 0.3 clears the bar → ok, floor reported 0.100.
1432
+ const loose = (await handle({ query: 'test', min_relevance: 0.1 }));
1433
+ const ml = loose.content[0].text.match(ENVELOPE_RE);
1434
+ expect(ml[1]).toBe('ok');
1435
+ expect(ml[4]).toBe('0.100');
1436
+ expect(loose.content[0].text).toContain('mid body');
1437
+ });
1438
+ it('preserves relevance through the federation RRF merge (second fusion site)', async () => {
1439
+ mockSearchResults = [
1440
+ {
1441
+ label: 'P',
1442
+ type: 'code',
1443
+ filePath: 'src/p.ts',
1444
+ score: 0.95,
1445
+ relevance: 0.88,
1446
+ searchMethod: 'hybrid',
1447
+ content: 'primary body',
1448
+ },
1449
+ ];
1450
+ mockLinkedStores.set('strategy', {
1451
+ search: vi.fn(async () => [
1452
+ {
1453
+ label: 'S',
1454
+ type: 'spec',
1455
+ filePath: 'adr/s.md',
1456
+ absoluteFilePath: '/abs/strategy/adr/s.md',
1457
+ sourceRepo: 'strategy',
1458
+ score: 0.5,
1459
+ relevance: 0.72,
1460
+ searchMethod: 'hybrid',
1461
+ content: 'strategy body',
1462
+ },
1463
+ ]),
1464
+ reconnect: vi.fn(async () => { }),
1465
+ });
1466
+ const result = (await handle({ query: 'test' }));
1467
+ const text = result.content[0].text;
1468
+ // Federation overwrites score with RRF but must carry relevance through.
1469
+ expect(text).toContain('**Relevance:** 0.880');
1470
+ expect(text).toContain('**Relevance:** 0.720');
1471
+ const m = text.match(ENVELOPE_RE);
1472
+ expect(m[3]).toBe('0.880'); // max across federated hits
1473
+ });
1474
+ it('degraded embedder: fts-stamped hits surface a keyword-only warning and method="fts"', async () => {
1475
+ mockSearchResults = [
1476
+ {
1477
+ label: 'K1',
1478
+ type: 'code',
1479
+ filePath: 'src/k.ts',
1480
+ score: 1.0,
1481
+ searchMethod: 'fts',
1482
+ content: 'keyword hit body',
1483
+ },
1484
+ ];
1485
+ const result = (await handle({ query: 'test' }));
1486
+ const text = result.content[0].text;
1487
+ expect(result.isError).toBeUndefined();
1488
+ const m = text.match(ENVELOPE_RE);
1489
+ expect(m[2]).toBe('fts');
1490
+ // Loud, honest degradation warning.
1491
+ expect(text).toContain('[SYSTEM WARNING]');
1492
+ expect(text).toContain('KEYWORD-ONLY');
1493
+ // Keyword hits render Relevance as an explicit n/a note.
1494
+ expect(text).toContain('**Relevance:** n/a (keyword match)');
1495
+ });
1496
+ it('logs topRelevance alongside topScore', async () => {
1497
+ mockSearchResults = [
1498
+ {
1499
+ label: 'A',
1500
+ type: 'code',
1501
+ filePath: 'src/a.ts',
1502
+ score: 0.016,
1503
+ relevance: 0.77,
1504
+ searchMethod: 'hybrid',
1505
+ content: 'body',
1506
+ },
1507
+ ];
1508
+ await handle({ query: 'test' });
1509
+ const call = mockLogSearch.mock.calls.find((c) => c[0].query === 'test');
1510
+ expect(call).toBeTruthy();
1511
+ expect(call[0].topRelevance).toBeCloseTo(0.77, 3);
1512
+ });
1513
+ });
1227
1514
  });
1228
1515
  //# sourceMappingURL=search-knowledge.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"search-knowledge.test.js","sourceRoot":"","sources":["../../src/tools/search-knowledge.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"search-knowledge.test.js","sourceRoot":"","sources":["../../src/tools/search-knowledge.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mmnto/mcp",
3
- "version": "1.103.0",
3
+ "version": "1.105.0",
4
4
  "description": "MCP server for Totem, the local-first toolkit that keeps AI-agent work queryable, enforceable, and derivable as plain files in your codebase",
5
5
  "type": "module",
6
6
  "engines": {
@@ -22,7 +22,7 @@
22
22
  "dotenv": "^16.4.0",
23
23
  "jiti": "^2.4.0",
24
24
  "zod": "^3.24.0",
25
- "@mmnto/totem": "1.103.0"
25
+ "@mmnto/totem": "1.105.0"
26
26
  },
27
27
  "devDependencies": {
28
28
  "@types/node": "^22.0.0",