@mmnto/mcp 1.114.0 → 1.116.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.
- package/dist/ledger-writer.d.ts +17 -0
- package/dist/ledger-writer.d.ts.map +1 -1
- package/dist/ledger-writer.js +57 -1
- package/dist/ledger-writer.js.map +1 -1
- package/dist/ledger-writer.test.js +63 -0
- package/dist/ledger-writer.test.js.map +1 -1
- package/dist/search-log.d.ts +52 -16
- package/dist/search-log.d.ts.map +1 -1
- package/dist/search-log.js +46 -26
- package/dist/search-log.js.map +1 -1
- package/dist/search-log.test.js +129 -6
- package/dist/search-log.test.js.map +1 -1
- package/dist/tools/search-knowledge.d.ts.map +1 -1
- package/dist/tools/search-knowledge.js +122 -4
- package/dist/tools/search-knowledge.js.map +1 -1
- package/dist/tools/search-knowledge.test.js +178 -1
- package/dist/tools/search-knowledge.test.js.map +1 -1
- package/package.json +2 -2
package/dist/search-log.test.js
CHANGED
|
@@ -1,8 +1,31 @@
|
|
|
1
|
+
import * as fs from 'node:fs';
|
|
2
|
+
import * as os from 'node:os';
|
|
3
|
+
import * as path from 'node:path';
|
|
1
4
|
import { afterEach, beforeEach, describe, expect, it } from 'vitest';
|
|
2
|
-
import { deriveSearchLogAttribution, logSearch } from './search-log.js';
|
|
3
|
-
|
|
5
|
+
import { _clearLogDirForTesting, deriveSearchLogAttribution, getSearchStats, logSearch, setLogDir, } from './search-log.js';
|
|
6
|
+
const SESSION_A = '550e8400-e29b-41d4-a716-446655440000';
|
|
7
|
+
/** Windows-safe teardown options — retries ride out transient ENOTEMPTY. */
|
|
8
|
+
const RM_OPTS = { recursive: true, force: true, maxRetries: 3, retryDelay: 100 };
|
|
9
|
+
/** Pointer at SESSION_A minted by `mintSeat` — the #2629 contamination fixture. */
|
|
10
|
+
function contaminatedTotemDir(mintSeat) {
|
|
11
|
+
const totemDir = fs.mkdtempSync(path.join(os.tmpdir(), 'search-log-attr-'));
|
|
12
|
+
const ledgerDir = path.join(totemDir, 'ledger');
|
|
13
|
+
fs.mkdirSync(ledgerDir, { recursive: true });
|
|
14
|
+
fs.writeFileSync(path.join(ledgerDir, '.session-id'), SESSION_A, 'utf-8');
|
|
15
|
+
fs.writeFileSync(path.join(ledgerDir, 'events.ndjson'), JSON.stringify({
|
|
16
|
+
timestamp: '2026-08-12T03:03:00.000Z',
|
|
17
|
+
type: 'session_start',
|
|
18
|
+
activity_name: 'SessionStart',
|
|
19
|
+
source: 'bot',
|
|
20
|
+
justification: '',
|
|
21
|
+
session_id: SESSION_A,
|
|
22
|
+
agent_source: mintSeat,
|
|
23
|
+
}) + '\n', 'utf-8');
|
|
24
|
+
return totemDir;
|
|
25
|
+
}
|
|
26
|
+
// ─── deriveSearchLogAttribution (env-only calls stay pure) ───
|
|
4
27
|
describe('deriveSearchLogAttribution', () => {
|
|
5
|
-
it('stamps all
|
|
28
|
+
it('stamps all fields from the environment when present, with env provenance', () => {
|
|
6
29
|
const attribution = deriveSearchLogAttribution({
|
|
7
30
|
TOTEM_SELF_AGENT: 'totem-claude',
|
|
8
31
|
TOTEM_SESSION_ID: 'sess-123',
|
|
@@ -10,13 +33,15 @@ describe('deriveSearchLogAttribution', () => {
|
|
|
10
33
|
});
|
|
11
34
|
expect(attribution).toEqual({
|
|
12
35
|
agent_source: 'totem-claude',
|
|
36
|
+
agent_source_provenance: 'env',
|
|
13
37
|
session_id: 'sess-123',
|
|
14
38
|
correlation_id: 'corr-abc',
|
|
15
39
|
});
|
|
16
40
|
});
|
|
17
|
-
it('stamps null
|
|
41
|
+
it('stamps null + absent provenance when the env is absent (Tenet 4 — never guess)', () => {
|
|
18
42
|
expect(deriveSearchLogAttribution({})).toEqual({
|
|
19
43
|
agent_source: null,
|
|
44
|
+
agent_source_provenance: 'absent',
|
|
20
45
|
session_id: null,
|
|
21
46
|
correlation_id: null,
|
|
22
47
|
});
|
|
@@ -24,6 +49,7 @@ describe('deriveSearchLogAttribution', () => {
|
|
|
24
49
|
it('stamps null per-field independently (partial env)', () => {
|
|
25
50
|
const attribution = deriveSearchLogAttribution({ TOTEM_SESSION_ID: 'only-session' });
|
|
26
51
|
expect(attribution.agent_source).toBeNull();
|
|
52
|
+
expect(attribution.agent_source_provenance).toBe('absent');
|
|
27
53
|
expect(attribution.session_id).toBe('only-session');
|
|
28
54
|
expect(attribution.correlation_id).toBeNull();
|
|
29
55
|
});
|
|
@@ -35,6 +61,7 @@ describe('deriveSearchLogAttribution', () => {
|
|
|
35
61
|
});
|
|
36
62
|
expect(attribution).toEqual({
|
|
37
63
|
agent_source: null,
|
|
64
|
+
agent_source_provenance: 'absent',
|
|
38
65
|
session_id: null,
|
|
39
66
|
correlation_id: null,
|
|
40
67
|
});
|
|
@@ -45,6 +72,31 @@ describe('deriveSearchLogAttribution', () => {
|
|
|
45
72
|
expect(deriveSearchLogAttribution({ TOTEM_SELF_AGENT: ' , totem-gemini , extra' }).agent_source).toBe('totem-gemini');
|
|
46
73
|
});
|
|
47
74
|
});
|
|
75
|
+
// ─── #2629 fail-closed conflict (totemDir-armed calls) ───
|
|
76
|
+
describe('deriveSearchLogAttribution conflict sense (#2629)', () => {
|
|
77
|
+
let totemDir;
|
|
78
|
+
afterEach(() => {
|
|
79
|
+
fs.rmSync(totemDir, RM_OPTS);
|
|
80
|
+
});
|
|
81
|
+
it('FAIL-CLOSED: env seat ≠ pointer minting seat → stamp neither, name both', () => {
|
|
82
|
+
totemDir = contaminatedTotemDir('totem-claude');
|
|
83
|
+
const attribution = deriveSearchLogAttribution({ TOTEM_SELF_AGENT: 'totem-gemini' }, totemDir);
|
|
84
|
+
expect(attribution.agent_source).toBeNull();
|
|
85
|
+
expect(attribution.agent_source_provenance).toBe('absent');
|
|
86
|
+
expect(attribution.attribution_conflict).toEqual({
|
|
87
|
+
env_seat: 'totem-gemini',
|
|
88
|
+
minting_seat: 'totem-claude',
|
|
89
|
+
pointer_session_id: SESSION_A,
|
|
90
|
+
});
|
|
91
|
+
});
|
|
92
|
+
it('agreement keeps the env stamp — no conflict fabricated', () => {
|
|
93
|
+
totemDir = contaminatedTotemDir('totem-claude');
|
|
94
|
+
const attribution = deriveSearchLogAttribution({ TOTEM_SELF_AGENT: 'totem-claude' }, totemDir);
|
|
95
|
+
expect(attribution.agent_source).toBe('totem-claude');
|
|
96
|
+
expect(attribution.agent_source_provenance).toBe('env');
|
|
97
|
+
expect(attribution.attribution_conflict).toBeUndefined();
|
|
98
|
+
});
|
|
99
|
+
});
|
|
48
100
|
// ─── logSearch stamping (no setLogDir → in-memory only, no fs) ───
|
|
49
101
|
describe('logSearch attribution stamp', () => {
|
|
50
102
|
const ENV_KEYS = ['TOTEM_SELF_AGENT', 'TOTEM_SESSION_ID', 'TOTEM_CORRELATION_ID'];
|
|
@@ -69,21 +121,92 @@ describe('logSearch attribution stamp', () => {
|
|
|
69
121
|
else
|
|
70
122
|
process.env[k] = saved[k];
|
|
71
123
|
}
|
|
124
|
+
// Reset the module-level log path so no test depends on file order and a
|
|
125
|
+
// torn-down tmpdir is never probed by a later logSearch (CR on #2634).
|
|
126
|
+
_clearLogDirForTesting();
|
|
72
127
|
});
|
|
73
|
-
it('stamps the trio from process.env onto the returned entry', () => {
|
|
128
|
+
it('stamps the trio + env provenance from process.env onto the returned entry', () => {
|
|
74
129
|
process.env.TOTEM_SELF_AGENT = 'totem-claude';
|
|
75
130
|
process.env.TOTEM_SESSION_ID = 'sess-9';
|
|
76
131
|
process.env.TOTEM_CORRELATION_ID = 'corr-9';
|
|
77
132
|
const stamped = logSearch({ ...baseEntry });
|
|
78
133
|
expect(stamped.agent_source).toBe('totem-claude');
|
|
134
|
+
expect(stamped.agent_source_provenance).toBe('env');
|
|
79
135
|
expect(stamped.session_id).toBe('sess-9');
|
|
80
136
|
expect(stamped.correlation_id).toBe('corr-9');
|
|
81
137
|
});
|
|
82
|
-
it('stamps explicit null on every field when the env is absent', () => {
|
|
138
|
+
it('stamps explicit null + absent provenance on every field when the env is absent', () => {
|
|
83
139
|
const stamped = logSearch({ ...baseEntry });
|
|
84
140
|
expect(stamped.agent_source).toBeNull();
|
|
141
|
+
expect(stamped.agent_source_provenance).toBe('absent');
|
|
85
142
|
expect(stamped.session_id).toBeNull();
|
|
86
143
|
expect(stamped.correlation_id).toBeNull();
|
|
87
144
|
});
|
|
145
|
+
it('a caller-supplied conflict/provenance never displaces the stamp — absence from the sense is authoritative too', () => {
|
|
146
|
+
process.env.TOTEM_SELF_AGENT = 'totem-claude';
|
|
147
|
+
const stamped = logSearch({
|
|
148
|
+
...baseEntry,
|
|
149
|
+
agent_source: 'forged-seat',
|
|
150
|
+
agent_source_provenance: 'absent',
|
|
151
|
+
attribution_conflict: {
|
|
152
|
+
env_seat: 'forged-a',
|
|
153
|
+
minting_seat: 'forged-b',
|
|
154
|
+
pointer_session_id: SESSION_A,
|
|
155
|
+
},
|
|
156
|
+
attribution_probe_error: 'forged failure',
|
|
157
|
+
});
|
|
158
|
+
expect(stamped.agent_source).toBe('totem-claude');
|
|
159
|
+
expect(stamped.agent_source_provenance).toBe('env');
|
|
160
|
+
// Clean sense → explicit undefined displaces the forged values, and
|
|
161
|
+
// JSON.stringify (the persistence shape) drops the keys entirely.
|
|
162
|
+
expect(stamped.attribution_conflict).toBeUndefined();
|
|
163
|
+
expect(stamped.attribution_probe_error).toBeUndefined();
|
|
164
|
+
expect(JSON.parse(JSON.stringify(stamped))).not.toHaveProperty('attribution_conflict');
|
|
165
|
+
});
|
|
166
|
+
it('SEAM-LEVEL invariant 10: with EVERY probe failing (pointer AND events paths are directories), logSearch still records, stamps env, and names the errno', () => {
|
|
167
|
+
const totemDir = fs.mkdtempSync(path.join(os.tmpdir(), 'search-log-probe-'));
|
|
168
|
+
try {
|
|
169
|
+
const ledgerDir = path.join(totemDir, 'ledger');
|
|
170
|
+
// DIRECTORIES where both probe files should be — EISDIR on read for the
|
|
171
|
+
// pointer and the events file alike: every probe fails, the non-benign
|
|
172
|
+
// class (not the honest-absence ENOENT set).
|
|
173
|
+
fs.mkdirSync(path.join(ledgerDir, 'events.ndjson'), { recursive: true });
|
|
174
|
+
fs.mkdirSync(path.join(ledgerDir, '.session-id'), { recursive: true });
|
|
175
|
+
process.env.TOTEM_SELF_AGENT = 'totem-claude';
|
|
176
|
+
setLogDir(totemDir);
|
|
177
|
+
const callsBefore = getSearchStats().totalCalls;
|
|
178
|
+
const stamped = logSearch({ ...baseEntry });
|
|
179
|
+
// "still records": the in-memory log grew (the file append is
|
|
180
|
+
// fire-and-forget by contract and not asserted here).
|
|
181
|
+
expect(getSearchStats().totalCalls).toBe(callsBefore + 1);
|
|
182
|
+
expect(stamped.agent_source).toBe('totem-claude');
|
|
183
|
+
expect(stamped.agent_source_provenance).toBe('env');
|
|
184
|
+
expect(stamped.attribution_conflict).toBeUndefined();
|
|
185
|
+
// "names the failure": the errno itself — the half a post-hoc reader
|
|
186
|
+
// filters on — must survive the cause unroll, not just the wrapper text.
|
|
187
|
+
expect(stamped.attribution_probe_error).toMatch(/EISDIR|EPERM|EACCES/);
|
|
188
|
+
}
|
|
189
|
+
finally {
|
|
190
|
+
fs.rmSync(totemDir, RM_OPTS);
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
it('with setLogDir armed, a contaminated ledger produces a conflict row and the call still succeeds', () => {
|
|
194
|
+
const totemDir = contaminatedTotemDir('totem-claude');
|
|
195
|
+
try {
|
|
196
|
+
process.env.TOTEM_SELF_AGENT = 'totem-gemini';
|
|
197
|
+
setLogDir(totemDir);
|
|
198
|
+
const stamped = logSearch({ ...baseEntry });
|
|
199
|
+
expect(stamped.agent_source).toBeNull();
|
|
200
|
+
expect(stamped.agent_source_provenance).toBe('absent');
|
|
201
|
+
expect(stamped.attribution_conflict).toEqual({
|
|
202
|
+
env_seat: 'totem-gemini',
|
|
203
|
+
minting_seat: 'totem-claude',
|
|
204
|
+
pointer_session_id: SESSION_A,
|
|
205
|
+
});
|
|
206
|
+
}
|
|
207
|
+
finally {
|
|
208
|
+
fs.rmSync(totemDir, RM_OPTS);
|
|
209
|
+
}
|
|
210
|
+
});
|
|
88
211
|
});
|
|
89
212
|
//# sourceMappingURL=search-log.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"search-log.test.js","sourceRoot":"","sources":["../src/search-log.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,QAAQ,CAAC;AAErE,OAAO,
|
|
1
|
+
{"version":3,"file":"search-log.test.js","sourceRoot":"","sources":["../src/search-log.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -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;
|
|
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,8 +1,8 @@
|
|
|
1
1
|
import * as path from 'node:path';
|
|
2
2
|
import { z } from 'zod';
|
|
3
|
-
import { ContentTypeSchema, DEFAULT_SEARCH_RELEVANCE_FLOOR } from '@mmnto/totem';
|
|
3
|
+
import { buildMeasuredCandidate, ContentTypeSchema, DEFAULT_SEARCH_RELEVANCE_FLOOR, } from '@mmnto/totem';
|
|
4
4
|
import { getContext, reconnectStore } from '../context.js';
|
|
5
|
-
import { logCorpusQuery, logMcpCall } from '../ledger-writer.js';
|
|
5
|
+
import { logCorpusQuery, logMcpCall, logSelectionManifest } from '../ledger-writer.js';
|
|
6
6
|
import { logSearch, setLogDir } from '../search-log.js';
|
|
7
7
|
import { extractIndexState } from '../state-extractors.js';
|
|
8
8
|
import { formatIndexEnvelope, formatSystemWarning, formatXmlResponse } from '../xml-format.js';
|
|
@@ -201,7 +201,7 @@ function formatResult(r, index) {
|
|
|
201
201
|
*
|
|
202
202
|
* mmnto/totem#1294 Phase 2 + mmnto/totem#1295 fix.
|
|
203
203
|
*/
|
|
204
|
-
async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, failures, onFtsFallback) {
|
|
204
|
+
async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, failures, onFtsFallback, overflow) {
|
|
205
205
|
const { store: primaryStore, linkedStores } = await getContext();
|
|
206
206
|
// mmnto/totem#1295 GCA HIGH: catch primary failures inside federatedSearch
|
|
207
207
|
// ONLY when linked stores exist, so a transient primary failure doesn't
|
|
@@ -309,6 +309,7 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
|
|
|
309
309
|
// already comparable since they all come from one store. Skip RRF
|
|
310
310
|
// normalization to keep the original scores visible to the agent.
|
|
311
311
|
if (buckets.length === 1) {
|
|
312
|
+
overflow?.push(...primaryResults.slice(finalLimit));
|
|
312
313
|
return primaryResults.slice(0, finalLimit);
|
|
313
314
|
}
|
|
314
315
|
// mmnto/totem#1295 GCA CRITICAL: re-rank via Reciprocal Rank Fusion
|
|
@@ -342,6 +343,11 @@ async function federatedSearch(query, typeFilter, perStoreLimit, finalLimit, fai
|
|
|
342
343
|
});
|
|
343
344
|
}
|
|
344
345
|
reranked.sort((a, b) => (b.score ?? 0) - (a.score ?? 0));
|
|
346
|
+
// Selection-manifest visibility (mmnto-ai/totem#2468): the final-limit cut
|
|
347
|
+
// was this pipeline's one SILENT exclusion — fetched, ranked, then dropped
|
|
348
|
+
// with no trace. Report the cut candidates so the emitter can record them;
|
|
349
|
+
// the returned selection is byte-identical with or without the out-param.
|
|
350
|
+
overflow?.push(...reranked.slice(finalLimit));
|
|
345
351
|
return reranked.slice(0, finalLimit);
|
|
346
352
|
}
|
|
347
353
|
/**
|
|
@@ -399,6 +405,10 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
399
405
|
// `deriveLinkName` strips leading dots so a `.primary/` linked repo would
|
|
400
406
|
// collide with a reserved key. CR MAJOR catch on round 7.
|
|
401
407
|
const failures = makeFailureLog();
|
|
408
|
+
// Selection-manifest capture (mmnto-ai/totem#2468): candidates the federation
|
|
409
|
+
// fetched but cut at the final limit — populated only by Case 5, mirroring
|
|
410
|
+
// the `failures` out-param pattern. Purely observational.
|
|
411
|
+
const federationOverflow = [];
|
|
402
412
|
// ─── Boundary resolution (mmnto/totem#1294 Phase 2) ──
|
|
403
413
|
//
|
|
404
414
|
// Order of precedence:
|
|
@@ -524,7 +534,7 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
524
534
|
// Pass the `failures` log so the federation path can populate it on
|
|
525
535
|
// store errors without mutating global state. Primary lives in a
|
|
526
536
|
// dedicated slot to avoid colliding with linked-store names.
|
|
527
|
-
results = await federatedSearch(query, typeFilter, finalLimit, finalLimit, failures, onFtsFallback);
|
|
537
|
+
results = await federatedSearch(query, typeFilter, finalLimit, finalLimit, failures, onFtsFallback, federationOverflow);
|
|
528
538
|
}
|
|
529
539
|
// Build the runtime-failures warning (if any) once so we can decide
|
|
530
540
|
// whether to skip the "no results" early return for warn-only cases.
|
|
@@ -619,6 +629,94 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
619
629
|
.filter((x) => typeof x === 'number');
|
|
620
630
|
const hasRelevanceSignal = relevances.length > 0;
|
|
621
631
|
const bestRelevance = hasRelevanceSignal ? Math.max(...relevances) : null;
|
|
632
|
+
// ─── Selection-manifest emitter (mmnto-ai/totem#2468 M1) ──
|
|
633
|
+
//
|
|
634
|
+
// One manifest per selection OUTCOME (empty / no_useful_hits / mixed / ok) —
|
|
635
|
+
// the same "did a selection happen" boundary logCorpusQuery draws for the
|
|
636
|
+
// QBD row. isError outages emit nothing: the mcp_call denominator row makes
|
|
637
|
+
// that absence recorded, never silent. Each branch calls this AFTER
|
|
638
|
+
// composing its response text, so emission can never alter the selection
|
|
639
|
+
// (Tenet 13); logSelectionManifest swallows its own failures into the
|
|
640
|
+
// search log.
|
|
641
|
+
//
|
|
642
|
+
// Every candidate here was FETCHED by the policy (returned, withheld at the
|
|
643
|
+
// floor, or cut at the federation final limit), so every row is fully
|
|
644
|
+
// measured — the id-only form exists for policies that never read their
|
|
645
|
+
// exclusions, which this one has none of. `universe` names that boundary:
|
|
646
|
+
// exclusions are recorded over the fetched pool, not the whole index.
|
|
647
|
+
const emitSelectionManifest = async (status, parts) => {
|
|
648
|
+
const candidates = [];
|
|
649
|
+
const manifestWarnings = [];
|
|
650
|
+
const add = (hit, disposition, reason) => {
|
|
651
|
+
const { candidate, warning } = buildMeasuredCandidate({
|
|
652
|
+
id: hit.filePath,
|
|
653
|
+
content: hit.content,
|
|
654
|
+
disposition,
|
|
655
|
+
reason,
|
|
656
|
+
...(hit.sourceRepo !== undefined && { sourceRepo: hit.sourceRepo }),
|
|
657
|
+
});
|
|
658
|
+
candidates.push(candidate);
|
|
659
|
+
if (warning !== undefined)
|
|
660
|
+
manifestWarnings.push(warning);
|
|
661
|
+
};
|
|
662
|
+
for (const { hit, reason } of parts.selected ?? [])
|
|
663
|
+
add(hit, 'selected', reason);
|
|
664
|
+
for (const { hit, reason } of parts.excluded ?? [])
|
|
665
|
+
add(hit, 'excluded', reason);
|
|
666
|
+
for (const hit of federationOverflow)
|
|
667
|
+
add(hit, 'excluded', 'federation-final-limit overflow');
|
|
668
|
+
const federated = boundary === undefined && linkedStores.size > 0;
|
|
669
|
+
// Store outages are part of the observable-pool accounting (leg round 1,
|
|
670
|
+
// D-3): without them a query where stores errored reads as a FULL pool.
|
|
671
|
+
// Each failed store is named on the row's accounting channel, and the
|
|
672
|
+
// federated universe string carries how many stores actually answered.
|
|
673
|
+
if (failures.primary !== null) {
|
|
674
|
+
manifestWarnings.push(`store failure: primary: ${failures.primary}`);
|
|
675
|
+
}
|
|
676
|
+
for (const [name, msg] of failures.linked.entries()) {
|
|
677
|
+
manifestWarnings.push(`store failure: ${name}: ${msg}`);
|
|
678
|
+
}
|
|
679
|
+
const storesFailed = (failures.primary !== null ? 1 : 0) + failures.linked.size;
|
|
680
|
+
try {
|
|
681
|
+
await logSelectionManifest({
|
|
682
|
+
context: {
|
|
683
|
+
query,
|
|
684
|
+
boundary: boundary ?? null,
|
|
685
|
+
typeFilter: typeFilter ?? null,
|
|
686
|
+
floor: effectiveFloor,
|
|
687
|
+
finalLimit,
|
|
688
|
+
method,
|
|
689
|
+
status,
|
|
690
|
+
storesFailed,
|
|
691
|
+
// Links that never initialized are absent from `linkedStores`, so
|
|
692
|
+
// `answered` alone would read a permanently-broken link as a full
|
|
693
|
+
// pool — the exact misreading D-3 exists to prevent (leg round 2,
|
|
694
|
+
// finding 3). Counted as init-error entries NOT also present in
|
|
695
|
+
// `linkedStores`: that map carries non-fatal startup warnings for
|
|
696
|
+
// stores that still serve (empty stores, name collisions), and
|
|
697
|
+
// counting those would record an answering store as unavailable
|
|
698
|
+
// (PR #2625, greptile P1 + CR — the double-count both bots named).
|
|
699
|
+
storesUnavailable: [...linkedStoreInitErrors.keys()].filter((name) => !linkedStores.has(name)).length,
|
|
700
|
+
},
|
|
701
|
+
universe: federated
|
|
702
|
+
? `federated-returned-pool perStoreLimit=${finalLimit} stores=${linkedStores.size + 1} answered=${linkedStores.size + 1 - storesFailed}`
|
|
703
|
+
: `store-returned-pool maxResults=${finalLimit}`,
|
|
704
|
+
candidates,
|
|
705
|
+
warnings: manifestWarnings,
|
|
706
|
+
});
|
|
707
|
+
// totem-context: defense-in-depth (leg round 1, D-5) — logSelectionManifest swallows its own failures by contract; this catch guarantees the sensor can never surface as a search failure even if that contract regresses, and the failure stays visible via the search log (never swallowed silently).
|
|
708
|
+
}
|
|
709
|
+
catch (err) {
|
|
710
|
+
logSearch({
|
|
711
|
+
timestamp: new Date().toISOString(),
|
|
712
|
+
query: 'internal:selection-manifest',
|
|
713
|
+
resultCount: 0,
|
|
714
|
+
durationMs: 0,
|
|
715
|
+
topScore: null,
|
|
716
|
+
error: `selection-manifest emit failed: ${err instanceof Error ? err.message : String(err)}`,
|
|
717
|
+
});
|
|
718
|
+
}
|
|
719
|
+
};
|
|
622
720
|
if (results.length === 0) {
|
|
623
721
|
if (allFederatedStoresFailed) {
|
|
624
722
|
return {
|
|
@@ -648,6 +746,7 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
648
746
|
retrievalEnvelope: emptyEnvelope,
|
|
649
747
|
body,
|
|
650
748
|
}); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
|
|
749
|
+
await emitSelectionManifest('empty', {});
|
|
651
750
|
return { content: [{ type: 'text', text }] };
|
|
652
751
|
}
|
|
653
752
|
// Floor fires ONLY when a real relevance signal exists — a pure-FTS corpus
|
|
@@ -693,6 +792,12 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
693
792
|
retrievalEnvelope: belowFloorEnvelope,
|
|
694
793
|
body,
|
|
695
794
|
}); // 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
|
+
});
|
|
696
801
|
return { content: [{ type: 'text', text }] };
|
|
697
802
|
}
|
|
698
803
|
// Mixed batch: return the floor-exempt keyword hits, disclose the
|
|
@@ -714,6 +819,16 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
714
819
|
retrievalEnvelope: mixedEnvelope,
|
|
715
820
|
body,
|
|
716
821
|
}); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
|
|
822
|
+
await emitSelectionManifest('ok', {
|
|
823
|
+
selected: floorExempt.map((hit) => ({
|
|
824
|
+
hit,
|
|
825
|
+
reason: 'floor-exempt keyword hit (no relevance signal)',
|
|
826
|
+
})),
|
|
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
|
+
})),
|
|
831
|
+
});
|
|
717
832
|
return { content: [{ type: 'text', text }] };
|
|
718
833
|
}
|
|
719
834
|
const okEnvelope = formatRetrievalEnvelope({
|
|
@@ -733,6 +848,9 @@ async function performSearch(query, typeFilter, maxResults, boundary, minRelevan
|
|
|
733
848
|
retrievalEnvelope: okEnvelope,
|
|
734
849
|
body: knowledgeBody,
|
|
735
850
|
}); // totem-ignore mmnto-ai/totem#1294 — composed from system-generated + XML-wrapped pieces
|
|
851
|
+
await emitSelectionManifest('ok', {
|
|
852
|
+
selected: results.map((hit, i) => ({ hit, reason: `returned rank=${i + 1}` })),
|
|
853
|
+
});
|
|
736
854
|
return { content: [{ type: 'text', text }] };
|
|
737
855
|
}
|
|
738
856
|
/**
|
|
@@ -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":"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"}
|