@mmnto/mcp 1.124.0 → 2.1.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.
@@ -1 +1 @@
1
- {"version":3,"file":"state-extractors.test.js","sourceRoot":"","sources":["../src/state-extractors.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state-extractors.test.js","sourceRoot":"","sources":["../src/state-extractors.test.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,11 @@ const mockDescribeProject = vi.fn(() => ({
12
12
  description: 'A test project',
13
13
  tier: 'standard',
14
14
  rules: 10,
15
+ rulesCompiled: 12,
16
+ rulesArchived: 2,
17
+ rulesUntested: 0,
18
+ rulesPendingVerification: 0,
19
+ rulesSource: 'compiled-rules',
15
20
  lessons: 5,
16
21
  targets: ['**/*.ts (code/typescript-ast)'],
17
22
  partitions: { core: ['packages/core/'] },
@@ -119,6 +124,11 @@ describe('describe_project MCP tool', () => {
119
124
  description: 'A test project',
120
125
  tier: 'standard',
121
126
  rules: 10,
127
+ rulesCompiled: 12,
128
+ rulesArchived: 2,
129
+ rulesUntested: 0,
130
+ rulesPendingVerification: 0,
131
+ rulesSource: 'compiled-rules',
122
132
  lessons: 5,
123
133
  targets: ['**/*.ts (code/typescript-ast)'],
124
134
  partitions: { core: ['packages/core/'] },
@@ -1 +1 @@
1
- {"version":3,"file":"describe-project.test.js","sourceRoot":"","sources":["../../src/tools/describe-project.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"describe-project.test.js","sourceRoot":"","sources":["../../src/tools/describe-project.test.ts"],"names":[],"mappings":"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"}
@@ -13,13 +13,27 @@ export declare function _resetSessionFlags(): void;
13
13
  * escaping is required. `hits` counts RETURNED hits: 0 for `no_useful_hits`
14
14
  * (candidates are disclosed, not returned) and the floor-exempt subset for a
15
15
  * mixed below-floor batch.
16
+ *
17
+ * `floor` is `null` when NO floor applies — neither a configured
18
+ * `searchRelevanceFloor` (which carries no default since
19
+ * mmnto-ai/totem#2727) nor a per-call `min_relevance`. It renders as
20
+ * `floor="none"`, a closed token like every other attribute value, and the
21
+ * below-floor arm can then never answer `no_useful_hits`.
22
+ *
23
+ * `faulted` (mmnto-ai/totem#2770) counts the hits whose relevance failed
24
+ * core's `isRelevanceInRange` — NaN, ±Infinity, outside [0, 1]. They are
25
+ * never signal (they cannot raise `bestRelevance`), never a withheld
26
+ * measurement, and never an exemption; a retrieval whose every hit is faulted
27
+ * answers `no_useful_hits` with or without a floor. The attribute is always
28
+ * present, so the line keeps one closed shape.
16
29
  */
17
30
  export declare function formatRetrievalEnvelope(params: {
18
31
  status: 'ok' | 'no_useful_hits' | 'empty';
19
32
  method: 'hybrid' | 'vector' | 'fts';
20
33
  bestRelevance: number | null;
21
- floor: number;
34
+ floor: number | null;
22
35
  hits: number;
36
+ faulted: number;
23
37
  }): string;
24
38
  /**
25
39
  * Per-process accumulation behind the `<size-disclosure>` envelope (#2600).
@@ -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;AAmDzE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AAyWD;;;;;;;;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;AA2gBD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc;;;CAAyB,CAAC;AAYrD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAU/E;AAmCD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA0P/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;AA+CzE;;;;GAIG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAGzC;AA6WD;;;;;;;;;;;;;;;;;;;;;GAqBG;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,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAOT;AA2oBD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,cAAc;;;CAAyB,CAAC;AAYrD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,MAAM,CAU/E;AAmCD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA2P/D"}
@@ -1,6 +1,6 @@
1
1
  import * as path from 'node:path';
2
2
  import { z } from 'zod';
3
- import { buildMeasuredCandidate, ContentTypeSchema, DEFAULT_SEARCH_RELEVANCE_FLOOR, } from '@mmnto/totem';
3
+ import { buildMeasuredCandidate, ContentTypeSchema, isRelevanceInRange } from '@mmnto/totem';
4
4
  import { getContext, reconnectStore } from '../context.js';
5
5
  import { logCorpusQuery, logMcpCall, logSelectionManifest } from '../ledger-writer.js';
6
6
  import { logSearch, setLogDir } from '../search-log.js';
@@ -160,8 +160,12 @@ function formatResult(r, index) {
160
160
  // absent signal for a low one. The "keyword match" note is reserved for
161
161
  // fts-stamped hits — a vector/hybrid hit that (defensively) lacks relevance
162
162
  // shows a bare "n/a" rather than being mislabeled as a keyword match.
163
+ // mmnto-ai/totem#2770: a number that fails core's range predicate is a
164
+ // FAULT, printed as such — never as a measurement a reader could compare.
163
165
  const relevanceField = typeof r.relevance === 'number'
164
- ? r.relevance.toFixed(3)
166
+ ? isRelevanceInRange(r.relevance)
167
+ ? r.relevance.toFixed(3)
168
+ : 'faulted (not a finite number in [0, 1])'
165
169
  : r.searchMethod === 'fts'
166
170
  ? 'n/a (keyword match)'
167
171
  : 'n/a';
@@ -372,11 +376,25 @@ function deriveSearchMethod(results) {
372
376
  * escaping is required. `hits` counts RETURNED hits: 0 for `no_useful_hits`
373
377
  * (candidates are disclosed, not returned) and the floor-exempt subset for a
374
378
  * mixed below-floor batch.
379
+ *
380
+ * `floor` is `null` when NO floor applies — neither a configured
381
+ * `searchRelevanceFloor` (which carries no default since
382
+ * mmnto-ai/totem#2727) nor a per-call `min_relevance`. It renders as
383
+ * `floor="none"`, a closed token like every other attribute value, and the
384
+ * below-floor arm can then never answer `no_useful_hits`.
385
+ *
386
+ * `faulted` (mmnto-ai/totem#2770) counts the hits whose relevance failed
387
+ * core's `isRelevanceInRange` — NaN, ±Infinity, outside [0, 1]. They are
388
+ * never signal (they cannot raise `bestRelevance`), never a withheld
389
+ * measurement, and never an exemption; a retrieval whose every hit is faulted
390
+ * answers `no_useful_hits` with or without a floor. The attribute is always
391
+ * present, so the line keeps one closed shape.
375
392
  */
376
393
  export function formatRetrievalEnvelope(params) {
377
394
  const best = params.bestRelevance !== null ? params.bestRelevance.toFixed(3) : 'n/a';
395
+ const floor = params.floor !== null ? params.floor.toFixed(3) : 'none';
378
396
  return (`<retrieval-envelope status="${params.status}" method="${params.method}" ` +
379
- `bestRelevance="${best}" floor="${params.floor.toFixed(3)}" hits="${params.hits}" />`);
397
+ `bestRelevance="${best}" floor="${floor}" hits="${params.hits}" faulted="${params.faulted}" />`);
380
398
  }
381
399
  async function performSearch(query, typeFilter, maxResults, boundary, minRelevance) {
382
400
  const { config, linkedStores, linkedStoreInitErrors, projectRoot } = await getContext();
@@ -603,9 +621,14 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
603
621
  // construction in hybrid/federated modes), so a floor over it would classify
604
622
  // every fused hit as noise. The envelope discloses the outcome machine-
605
623
  // readably beside the existing <index-meta> line.
606
- const configuredFloor = typeof config.searchRelevanceFloor === 'number'
607
- ? config.searchRelevanceFloor
608
- : DEFAULT_SEARCH_RELEVANCE_FLOOR;
624
+ //
625
+ // `undefined` = NO FLOOR (mmnto-ai/totem#2727): `searchRelevanceFloor`
626
+ // carries no default, so an unconfigured repo runs unfloored and this tool
627
+ // can never answer `no_useful_hits`. The per-call `min_relevance` still
628
+ // overrides, in both directions. `config` only ever arrives here through
629
+ // `TotemConfigSchema.parse` (context.ts), so the field is `number | undefined`
630
+ // by construction — no runtime guard.
631
+ const configuredFloor = config.searchRelevanceFloor;
609
632
  const effectiveFloor = minRelevance !== undefined ? minRelevance : configuredFloor;
610
633
  // A zero-row fallback leaves nothing fts-stamped — the callback flag keeps
611
634
  // the envelope method honest for an empty keyword-only result set
@@ -621,14 +644,59 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
621
644
  '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)',
622
645
  ].join('\n'))
623
646
  : null;
624
- // Best relevance = max over hits that CARRY a relevance signal. Empty-safe:
625
- // only spread into Math.max when non-empty (else it yields -Infinity). `null`
626
- // encodes "no hit carried a relevance signal" — the floor never fires then.
627
- const relevances = results
628
- .map((r) => r.relevance)
629
- .filter((x) => typeof x === 'number');
647
+ // ─── Three classes of hit (mmnto-ai/totem#2770) ──
648
+ //
649
+ // Judged by what the hit carries, on core's `isRelevanceInRange` — the SAME
650
+ // predicate the grounding-bundle builder omits on and the CLI floor gate
651
+ // (`evaluateGroundingFloor`, mmnto-ai/totem#2761) classifies with, so the
652
+ // two readers can no longer disagree about one hit. A relevance IN range is
653
+ // SIGNAL. No relevance at all (a keyword-only hit) is EXEMPT. A number that
654
+ // fails the predicate — NaN, ±Infinity, outside [0, 1]; under `l2` only a
655
+ // negative `_distance`, an SDK or data fault the search layer has already
656
+ // tallied — is FAULTED: neither signal nor exemption. It cannot raise
657
+ // `bestRelevance` (a NaN inside `Math.max` used to poison it, `NaN < floor`
658
+ // is false, and the floor never fired — a fault defeated the refusal), it is
659
+ // never withheld as a measurement, and it cannot save a batch the way a
660
+ // keyword-only hit does.
661
+ const hitClass = (r) => typeof r.relevance !== 'number'
662
+ ? 'exempt'
663
+ : isRelevanceInRange(r.relevance)
664
+ ? 'signal'
665
+ : 'faulted';
666
+ const signalHits = results.filter((r) => hitClass(r) === 'signal');
667
+ const faultedHits = results.filter((r) => hitClass(r) === 'faulted');
668
+ const exemptHits = results.filter((r) => hitClass(r) === 'exempt');
669
+ const faulted = faultedHits.length;
670
+ // Best relevance = max over SIGNAL hits. Empty-safe: only spread into
671
+ // Math.max when non-empty (else it yields -Infinity). `null` encodes "no hit
672
+ // carried a usable relevance signal" — the below-floor arm never fires then.
673
+ const relevances = signalHits.map((r) => r.relevance);
630
674
  const hasRelevanceSignal = relevances.length > 0;
631
675
  const bestRelevance = hasRelevanceSignal ? Math.max(...relevances) : null;
676
+ const candidateLabel = (r) => r.sourceRepo ? `[${r.sourceRepo}] ` + r.absoluteFilePath : r.absoluteFilePath;
677
+ // The CLI refusal's wording (`formatGroundingRefusal`), so the two readers
678
+ // describe one fault in one sentence. "Tallied", not "warned": the store's
679
+ // own warning sink is a follow-up (mmnto-ai/totem#2763).
680
+ const FAULTED_CAUSE = 'a relevance that is not a finite number in [0, 1] (tallied out of range by the search layer)';
681
+ const FAULTED_REASON = 'relevance-faulted (not a finite number in [0, 1])';
682
+ const faultedCandidateLines = () => [
683
+ 'Faulted candidates (disclosed, not returned — path only):',
684
+ ...faultedHits.map((r, i) => `${i + 1}. ${candidateLabel(r)} — relevance faulted`),
685
+ ];
686
+ // The below-floor arms' disclosure: a fault BESIDE real hits says what it
687
+ // did not count as — the CLI's `else` arm sentence. The all-faulted arm
688
+ // states its cause once in its own first line and lists the candidates
689
+ // only, as the CLI's `bestRelevance === null` arm does.
690
+ const faultedDisclosure = () => {
691
+ if (faulted === 0)
692
+ return [];
693
+ const noun = faulted === 1 ? 'hit' : 'hits';
694
+ return [
695
+ '',
696
+ `${faulted} ${noun} carried ${FAULTED_CAUSE} and did not count as signal or as exemption.`,
697
+ ...faultedCandidateLines(),
698
+ ];
699
+ };
632
700
  // ─── Selection-manifest emitter (mmnto-ai/totem#2468 M1) ──
633
701
  //
634
702
  // One manifest per selection OUTCOME (empty / no_useful_hits / mixed / ok) —
@@ -663,8 +731,15 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
663
731
  add(hit, 'selected', reason);
664
732
  for (const { hit, reason } of parts.excluded ?? [])
665
733
  add(hit, 'excluded', reason);
666
- for (const hit of federationOverflow)
667
- add(hit, 'excluded', 'federation-final-limit overflow');
734
+ // An overflow hit keeps its relevance, so a faulted one is named as such in
735
+ // its reason; the context's `faulted` count is scoped to the returned pool
736
+ // (`results`), which is what the envelope reports (Greptile P2 on
737
+ // mmnto-ai/totem#2770).
738
+ for (const hit of federationOverflow) {
739
+ add(hit, 'excluded', hitClass(hit) === 'faulted'
740
+ ? 'federation-final-limit overflow (relevance faulted)'
741
+ : 'federation-final-limit overflow');
742
+ }
668
743
  const federated = boundary === undefined && linkedStores.size > 0;
669
744
  // Store outages are part of the observable-pool accounting (leg round 1,
670
745
  // D-3): without them a query where stores errored reads as a FULL pool.
@@ -683,10 +758,13 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
683
758
  query,
684
759
  boundary: boundary ?? null,
685
760
  typeFilter: typeFilter ?? null,
686
- floor: effectiveFloor,
761
+ // `null` records "no floor applied" — the manifest never invents a
762
+ // number for a selection no floor judged (mmnto-ai/totem#2727).
763
+ floor: effectiveFloor ?? null,
687
764
  finalLimit,
688
765
  method,
689
766
  status,
767
+ faulted,
690
768
  storesFailed,
691
769
  // Links that never initialized are absent from `linkedStores`, so
692
770
  // `answered` alone would read a permanently-broken link as a full
@@ -734,8 +812,9 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
734
812
  status: 'empty',
735
813
  method,
736
814
  bestRelevance,
737
- floor: effectiveFloor,
815
+ floor: effectiveFloor ?? null,
738
816
  hits: 0,
817
+ faulted,
739
818
  });
740
819
  const body = formatXmlResponse('knowledge', 'No results found.');
741
820
  const text = composeResponseText({
@@ -749,27 +828,77 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
749
828
  await emitSelectionManifest('empty', {});
750
829
  return { content: [{ type: 'text', text }] };
751
830
  }
752
- // Floor fires ONLY when a real relevance signal exists — a pure-FTS corpus
753
- // (no vector relevance to report) is never demoted to no_useful_hits. And it
754
- // judges ONLY the hits that carry a signal: keyword-only hits have no
755
- // comparable relevance and are floor-EXEMPT a mixed batch must never
756
- // withhold them because their vector-leg siblings scored weak (greptile P1,
757
- // mmnto-ai/totem#2494 round 2).
758
- if (hasRelevanceSignal && bestRelevance !== null && bestRelevance < effectiveFloor) {
759
- const floorExempt = results.filter((r) => typeof r.relevance !== 'number');
760
- const withheld = results.filter((r) => typeof r.relevance === 'number');
831
+ // ─── Every hit faulted (mmnto-ai/totem#2770) ──
832
+ //
833
+ // Nothing usable to return and no measurement to compare, whatever the
834
+ // floor: the zero-row case's sibling, and the ONE arm that answers
835
+ // `no_useful_hits` with no floor configured the CLI gate refuses the same
836
+ // retrieval outright (`evaluateGroundingFloor`'s `nothingUsable`). Content
837
+ // is withheld and every candidate disclosed by path, as the floor arm does.
838
+ if (results.length > 0 && signalHits.length === 0 && exemptHits.length === 0) {
839
+ const noun = results.length === 1 ? 'hit' : 'hits';
840
+ const allFaultedEnvelope = formatRetrievalEnvelope({
841
+ status: 'no_useful_hits',
842
+ method,
843
+ bestRelevance: null,
844
+ floor: effectiveFloor ?? null,
845
+ hits: 0,
846
+ faulted,
847
+ });
848
+ const body = formatXmlResponse('knowledge', [
849
+ `Retrieval returned ${results.length} ${noun}, but every one carried ${FAULTED_CAUSE} — nothing usable to return.`,
850
+ '',
851
+ ...faultedCandidateLines(),
852
+ ].join('\n'));
853
+ const text = composeResponseText({
854
+ fallbackWarning,
855
+ runtimeWarning,
856
+ staleWarning,
857
+ indexEnvelope,
858
+ retrievalEnvelope: allFaultedEnvelope,
859
+ body,
860
+ }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
861
+ await emitSelectionManifest('no_useful_hits', {
862
+ excluded: faultedHits.map((hit) => ({ hit, reason: FAULTED_REASON })),
863
+ });
864
+ return { content: [{ type: 'text', text }] };
865
+ }
866
+ // Floor fires ONLY when a floor APPLIES (mmnto-ai/totem#2727: neither a
867
+ // configured `searchRelevanceFloor` nor a per-call `min_relevance` leaves
868
+ // `effectiveFloor` undefined, and this whole branch is then unreachable) and
869
+ // a real relevance signal exists — a pure-FTS corpus (no vector relevance to
870
+ // report) is never demoted to no_useful_hits. And it judges ONLY the hits
871
+ // that carry a signal: keyword-only hits have no comparable relevance and are
872
+ // floor-EXEMPT — a mixed batch must never withhold them because their
873
+ // vector-leg siblings scored weak (greptile P1, mmnto-ai/totem#2494 round 2).
874
+ if (effectiveFloor !== undefined &&
875
+ hasRelevanceSignal &&
876
+ bestRelevance !== null &&
877
+ bestRelevance < effectiveFloor) {
878
+ // EXEMPT hits are returned; SIGNAL hits are withheld as measurements;
879
+ // FAULTED hits are withheld too, but disclosed as faults, never as numbers
880
+ // a reader could compare against the floor (mmnto-ai/totem#2770).
881
+ const floorExempt = exemptHits;
882
+ const withheld = signalHits;
761
883
  // Disclose every withheld below-floor candidate compactly (path +
762
884
  // relevance, NO content) — exclusion is disclosed, never silently
763
885
  // dropped (Prop 308 F1).
764
886
  const candidateLines = withheld.map((r, i) => {
765
887
  const rel = typeof r.relevance === 'number' ? r.relevance.toFixed(3) : 'n/a';
766
- const label = r.sourceRepo ? `[${r.sourceRepo}] ` + r.absoluteFilePath : r.absoluteFilePath;
767
- return `${i + 1}. ${label} — relevance ${rel}`;
888
+ return `${i + 1}. ${candidateLabel(r)} relevance ${rel}`;
768
889
  });
769
890
  const disclosure = [
770
891
  `Below-floor candidates (disclosed, not returned — path + relevance only; floor ${effectiveFloor.toFixed(3)}, best relevance ${bestRelevance.toFixed(3)}):`,
771
892
  ...candidateLines,
893
+ ...faultedDisclosure(),
772
894
  ].join('\n');
895
+ const withheldExclusions = [
896
+ ...withheld.map((hit) => ({
897
+ hit,
898
+ reason: `below-relevance-floor floor=${effectiveFloor.toFixed(3)} relevance=${typeof hit.relevance === 'number' ? hit.relevance.toFixed(3) : 'n/a'}`,
899
+ })),
900
+ ...faultedHits.map((hit) => ({ hit, reason: FAULTED_REASON })),
901
+ ];
773
902
  if (floorExempt.length === 0) {
774
903
  // Every hit carried a below-floor signal → honest no_useful_hits.
775
904
  const belowFloorEnvelope = formatRetrievalEnvelope({
@@ -778,6 +907,7 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
778
907
  bestRelevance,
779
908
  floor: effectiveFloor,
780
909
  hits: 0,
910
+ faulted,
781
911
  });
782
912
  const body = formatXmlResponse('knowledge', [
783
913
  `No results met the relevance floor of ${effectiveFloor.toFixed(3)} (best relevance ${bestRelevance.toFixed(3)}).`,
@@ -792,22 +922,18 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
792
922
  retrievalEnvelope: belowFloorEnvelope,
793
923
  body,
794
924
  }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
795
- await emitSelectionManifest('no_useful_hits', {
796
- excluded: withheld.map((hit) => ({
797
- hit,
798
- reason: `below-relevance-floor floor=${effectiveFloor.toFixed(3)} relevance=${typeof hit.relevance === 'number' ? hit.relevance.toFixed(3) : 'n/a'}`,
799
- })),
800
- });
925
+ await emitSelectionManifest('no_useful_hits', { excluded: withheldExclusions });
801
926
  return { content: [{ type: 'text', text }] };
802
927
  }
803
928
  // Mixed batch: return the floor-exempt keyword hits, disclose the
804
- // withheld signal-bearing ones alongside.
929
+ // withheld signal-bearing ones (and any faulted ones) alongside.
805
930
  const mixedEnvelope = formatRetrievalEnvelope({
806
931
  status: 'ok',
807
932
  method,
808
933
  bestRelevance,
809
934
  floor: effectiveFloor,
810
935
  hits: floorExempt.length,
936
+ faulted,
811
937
  });
812
938
  const formattedExempt = floorExempt.map((r, i) => formatResult(r, i)).join('\n\n---\n\n');
813
939
  const body = formatXmlResponse('knowledge', formattedExempt + '\n\n---\n\n' + disclosure);
@@ -824,19 +950,21 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
824
950
  hit,
825
951
  reason: 'floor-exempt keyword hit (no relevance signal)',
826
952
  })),
827
- excluded: withheld.map((hit) => ({
828
- hit,
829
- reason: `below-relevance-floor floor=${effectiveFloor.toFixed(3)} relevance=${typeof hit.relevance === 'number' ? hit.relevance.toFixed(3) : 'n/a'}`,
830
- })),
953
+ excluded: withheldExclusions,
831
954
  });
832
955
  return { content: [{ type: 'text', text }] };
833
956
  }
957
+ // The batch proceeds on its real signal (or on an exemption). A faulted hit
958
+ // beside them is still RETURNED — the floor is a whole-run gate, not a
959
+ // per-hit filter — but its field reads `faulted`, the envelope counts it,
960
+ // and the manifest row says so (mmnto-ai/totem#2770).
834
961
  const okEnvelope = formatRetrievalEnvelope({
835
962
  status: 'ok',
836
963
  method,
837
964
  bestRelevance,
838
- floor: effectiveFloor,
965
+ floor: effectiveFloor ?? null,
839
966
  hits: results.length,
967
+ faulted,
840
968
  });
841
969
  const formatted = results.map((r, i) => formatResult(r, i)).join('\n\n---\n\n');
842
970
  const knowledgeBody = formatXmlResponse('knowledge', formatted);
@@ -849,7 +977,12 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
849
977
  body: knowledgeBody,
850
978
  }); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
851
979
  await emitSelectionManifest('ok', {
852
- selected: results.map((hit, i) => ({ hit, reason: `returned rank=${i + 1}` })),
980
+ selected: results.map((hit, i) => ({
981
+ hit,
982
+ reason: hitClass(hit) === 'faulted'
983
+ ? `returned rank=${i + 1} (relevance faulted)`
984
+ : `returned rank=${i + 1}`,
985
+ })),
853
986
  });
854
987
  return { content: [{ type: 'text', text }] };
855
988
  }
@@ -965,13 +1098,14 @@ export function registerSearchKnowledge(server) {
965
1098
  // it, the tool reports status="no_useful_hits" and discloses the
966
1099
  // below-floor candidates instead of returning noise. Overrides the
967
1100
  // config `searchRelevanceFloor`; the retrieval-envelope always reports
968
- // the effective floor.
1101
+ // the effective floor, or `none` when neither is set
1102
+ // (mmnto-ai/totem#2727 removed the config key's default).
969
1103
  min_relevance: z
970
1104
  .number()
971
1105
  .min(0)
972
1106
  .max(1)
973
1107
  .optional()
974
- .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.'),
1108
+ .describe('Relevance floor for this call (0..1, vector-leg similarity), compared against the BEST relevance of the whole retrieval — a whole-run gate, never a per-hit filter: one hit at or above it returns the full set, siblings below it included. Overrides the configured `searchRelevanceFloor`; with neither set, no floor applies and `status` is `no_useful_hits` only when EVERY hit carried a faulted relevance (not a finite number in [0, 1] — disclosed by path, never counted as signal or exemption).'),
975
1109
  },
976
1110
  annotations: {
977
1111
  readOnlyHint: true,