agentfootprint 6.40.0 → 6.41.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/adapters/llm/BrowserOpenAIProvider.js +37 -13
- package/dist/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
- package/dist/adapters/llm/OpenAIProvider.js +49 -20
- package/dist/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/esm/adapters/llm/BrowserOpenAIProvider.js +37 -13
- package/dist/esm/adapters/llm/BrowserOpenAIProvider.js.map +1 -1
- package/dist/esm/adapters/llm/OpenAIProvider.js +49 -20
- package/dist/esm/adapters/llm/OpenAIProvider.js.map +1 -1
- package/dist/esm/observability/contextError/finders/compareFinders.js +22 -0
- package/dist/esm/observability/contextError/finders/compareFinders.js.map +1 -0
- package/dist/esm/observability/contextError/finders/index.js +7 -0
- package/dist/esm/observability/contextError/finders/index.js.map +1 -0
- package/dist/esm/observability/contextError/finders/rankSuspects.js +50 -0
- package/dist/esm/observability/contextError/finders/rankSuspects.js.map +1 -0
- package/dist/esm/observability/contextError/finders/removeAndRetry.js +43 -0
- package/dist/esm/observability/contextError/finders/removeAndRetry.js.map +1 -0
- package/dist/esm/observability/contextError/finders/shrinkToCause.js +87 -0
- package/dist/esm/observability/contextError/finders/shrinkToCause.js.map +1 -0
- package/dist/esm/observability/contextError/finders/testManyCombos.js +94 -0
- package/dist/esm/observability/contextError/finders/testManyCombos.js.map +1 -0
- package/dist/esm/observability/contextError/finders/traceSteps.js +62 -0
- package/dist/esm/observability/contextError/finders/traceSteps.js.map +1 -0
- package/dist/esm/observability/contextError/finders/types.js +2 -0
- package/dist/esm/observability/contextError/finders/types.js.map +1 -0
- package/dist/observability/contextError/finders/compareFinders.js +26 -0
- package/dist/observability/contextError/finders/compareFinders.js.map +1 -0
- package/dist/observability/contextError/finders/index.js +16 -0
- package/dist/observability/contextError/finders/index.js.map +1 -0
- package/dist/observability/contextError/finders/rankSuspects.js +53 -0
- package/dist/observability/contextError/finders/rankSuspects.js.map +1 -0
- package/dist/observability/contextError/finders/removeAndRetry.js +46 -0
- package/dist/observability/contextError/finders/removeAndRetry.js.map +1 -0
- package/dist/observability/contextError/finders/shrinkToCause.js +90 -0
- package/dist/observability/contextError/finders/shrinkToCause.js.map +1 -0
- package/dist/observability/contextError/finders/testManyCombos.js +97 -0
- package/dist/observability/contextError/finders/testManyCombos.js.map +1 -0
- package/dist/observability/contextError/finders/traceSteps.js +65 -0
- package/dist/observability/contextError/finders/traceSteps.js.map +1 -0
- package/dist/observability/contextError/finders/types.js +3 -0
- package/dist/observability/contextError/finders/types.js.map +1 -0
- package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts +7 -0
- package/dist/types/adapters/llm/BrowserOpenAIProvider.d.ts.map +1 -1
- package/dist/types/adapters/llm/OpenAIProvider.d.ts +24 -1
- package/dist/types/adapters/llm/OpenAIProvider.d.ts.map +1 -1
- package/dist/types/observability/contextError/finders/compareFinders.d.ts +20 -0
- package/dist/types/observability/contextError/finders/compareFinders.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/index.d.ts +23 -0
- package/dist/types/observability/contextError/finders/index.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/rankSuspects.d.ts +3 -0
- package/dist/types/observability/contextError/finders/rankSuspects.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/removeAndRetry.d.ts +12 -0
- package/dist/types/observability/contextError/finders/removeAndRetry.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/shrinkToCause.d.ts +12 -0
- package/dist/types/observability/contextError/finders/shrinkToCause.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/testManyCombos.d.ts +12 -0
- package/dist/types/observability/contextError/finders/testManyCombos.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/traceSteps.d.ts +3 -0
- package/dist/types/observability/contextError/finders/traceSteps.d.ts.map +1 -0
- package/dist/types/observability/contextError/finders/types.d.ts +89 -0
- package/dist/types/observability/contextError/finders/types.d.ts.map +1 -0
- package/package.json +6 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/adapters/llm/OpenAIProvider.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"OpenAIProvider.js","sourceRoot":"","sources":["../../../../src/adapters/llm/OpenAIProvider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Run each finder on `input`; a finder that throws (e.g. missing a dep it needs)
|
|
3
|
+
* becomes a row with `result: null` and `error` set, so one finder cannot abort
|
|
4
|
+
* the comparison.
|
|
5
|
+
*/
|
|
6
|
+
export async function compareFinders(finders, input) {
|
|
7
|
+
const rows = [];
|
|
8
|
+
for (const f of finders) {
|
|
9
|
+
try {
|
|
10
|
+
rows.push({ finder: f.name, result: await f.find(input) });
|
|
11
|
+
}
|
|
12
|
+
catch (e) {
|
|
13
|
+
rows.push({
|
|
14
|
+
finder: f.name,
|
|
15
|
+
result: null,
|
|
16
|
+
error: e instanceof Error ? e.message : String(e),
|
|
17
|
+
});
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
return rows;
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=compareFinders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compareFinders.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/compareFinders.ts"],"names":[],"mappings":"AAeA;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAA0B,EAC1B,KAAgB;IAEhB,MAAM,IAAI,GAAiB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC;gBACR,MAAM,EAAE,CAAC,CAAC,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export { rankSuspects } from './rankSuspects.js';
|
|
2
|
+
export { removeAndRetry } from './removeAndRetry.js';
|
|
3
|
+
export { traceSteps } from './traceSteps.js';
|
|
4
|
+
export { testManyCombos } from './testManyCombos.js';
|
|
5
|
+
export { shrinkToCause } from './shrinkToCause.js';
|
|
6
|
+
export { compareFinders } from './compareFinders.js';
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/index.ts"],"names":[],"mappings":"AA2BA,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAmB,MAAM,qBAAqB,CAAC"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* rankSuspects — the free, instant finder. Ranks context pieces by embedding
|
|
3
|
+
* influence on the wrong answer and says when it cannot confidently pick one
|
|
4
|
+
* (escalate). Zero model tokens (embeddings only); a guess, not a verdict.
|
|
5
|
+
*
|
|
6
|
+
* Method: four-signal embedding-influence composite + ranking-confidence escalation.
|
|
7
|
+
* Thin adapter over `scoreInfluence` / `rankingConfidence` (influence-core).
|
|
8
|
+
*/
|
|
9
|
+
import { rankingConfidence, scoreInfluence } from '../../../lib/influence-core/index.js';
|
|
10
|
+
export const rankSuspects = {
|
|
11
|
+
name: 'rankSuspects',
|
|
12
|
+
meta: {
|
|
13
|
+
label: 'Ranks context pieces by how much each resembles the wrong answer (free)',
|
|
14
|
+
method: 'four-signal embedding-influence composite + ranking-confidence escalation',
|
|
15
|
+
paper: 'this work',
|
|
16
|
+
},
|
|
17
|
+
async find(input) {
|
|
18
|
+
if (!input.embedder)
|
|
19
|
+
throw new Error('rankSuspects needs input.embedder');
|
|
20
|
+
const evidence = input.suspects.map((s) => ({
|
|
21
|
+
id: s.id,
|
|
22
|
+
text: s.text,
|
|
23
|
+
ancestorTexts: [],
|
|
24
|
+
}));
|
|
25
|
+
const scores = await scoreInfluence({
|
|
26
|
+
evidence,
|
|
27
|
+
finalAnswerText: input.wrongOutput,
|
|
28
|
+
embedder: input.embedder,
|
|
29
|
+
});
|
|
30
|
+
const conf = rankingConfidence(scores);
|
|
31
|
+
const explanation = [
|
|
32
|
+
`rankSuspects: scored ${scores.length} context pieces by embedding influence on the wrong answer.`,
|
|
33
|
+
conf.clearWinner
|
|
34
|
+
? `Clear lead: ${conf.lead ?? '(none)'}.`
|
|
35
|
+
: `No clear winner → escalate; shortlist: ${conf.shortlist.join(', ') || '(none)'}.`,
|
|
36
|
+
`This is a guess (similarity proxy), not proof — confirm with removeAndRetry.`,
|
|
37
|
+
].join('\n');
|
|
38
|
+
return {
|
|
39
|
+
finder: 'rankSuspects',
|
|
40
|
+
suspects: scores.map((s) => ({ id: s.id, score: s.score })),
|
|
41
|
+
lead: conf.lead,
|
|
42
|
+
shortlist: [...conf.shortlist],
|
|
43
|
+
evidence: 'guessed',
|
|
44
|
+
granularity: 'piece',
|
|
45
|
+
checks: 0,
|
|
46
|
+
explanation,
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
};
|
|
50
|
+
//# sourceMappingURL=rankSuspects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rankSuspects.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/rankSuspects.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGzF,MAAM,CAAC,MAAM,YAAY,GAAW;IAClC,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,KAAK,EAAE,yEAAyE;QAChF,MAAM,EAAE,2EAA2E;QACnF,KAAK,EAAE,WAAW;KACnB;IACD,KAAK,CAAC,IAAI,CAAC,KAAgB;QACzB,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,aAAa,EAAE,EAAc;SAC9B,CAAC,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;YAClC,QAAQ;YACR,eAAe,EAAE,KAAK,CAAC,WAAW;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG;YAClB,wBAAwB,MAAM,CAAC,MAAM,6DAA6D;YAClG,IAAI,CAAC,WAAW;gBACd,CAAC,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,QAAQ,GAAG;gBACzC,CAAC,CAAC,0CAA0C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG;YACtF,8EAA8E;SAC/E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO;YACL,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3D,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;YAC9B,QAAQ,EAAE,SAAS;YACnB,WAAW,EAAE,OAAO;YACpB,MAAM,EAAE,CAAC;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const removeAndRetry = {
|
|
2
|
+
name: 'removeAndRetry',
|
|
3
|
+
meta: {
|
|
4
|
+
label: 'Removes each piece and re-runs; keeps the ones whose removal fixes the answer',
|
|
5
|
+
method: 'leave-one-out ablation (counterfactual necessity)',
|
|
6
|
+
paper: 'CausalArmor (Kim 2026) / ContextCite (Cohen-Wang 2024)',
|
|
7
|
+
},
|
|
8
|
+
async find(input) {
|
|
9
|
+
if (!input.rerun)
|
|
10
|
+
throw new Error('removeAndRetry needs input.rerun');
|
|
11
|
+
const rerun = input.rerun;
|
|
12
|
+
const results = [];
|
|
13
|
+
for (const s of input.suspects) {
|
|
14
|
+
const r = await rerun([s.id]);
|
|
15
|
+
results.push({ id: s.id, recovered: r.recovered });
|
|
16
|
+
}
|
|
17
|
+
const flippers = results.filter((r) => r.recovered).map((r) => r.id);
|
|
18
|
+
// flippers first (causally necessary); stable for ties
|
|
19
|
+
const ranked = [...results].sort((a, b) => Number(b.recovered) - Number(a.recovered));
|
|
20
|
+
const explanation = [
|
|
21
|
+
`removeAndRetry: removed each of ${input.suspects.length} pieces and re-ran (${results.length} checks).`,
|
|
22
|
+
flippers.length
|
|
23
|
+
? `Removing these flipped the outcome (causally necessary): ${flippers.join(', ')}.`
|
|
24
|
+
: `No single removal flipped the outcome — possible over-determination (no necessary single cause).`,
|
|
25
|
+
flippers.length > 1
|
|
26
|
+
? `NOTE: ${flippers.length} pieces each flip — multiple necessary causes or incidental reroutes; narrow with a slice (rankSuspects) first.`
|
|
27
|
+
: '',
|
|
28
|
+
]
|
|
29
|
+
.filter(Boolean)
|
|
30
|
+
.join('\n');
|
|
31
|
+
return {
|
|
32
|
+
finder: 'removeAndRetry',
|
|
33
|
+
suspects: ranked.map((r) => ({ id: r.id })),
|
|
34
|
+
lead: flippers[0],
|
|
35
|
+
shortlist: flippers,
|
|
36
|
+
evidence: 'proven',
|
|
37
|
+
granularity: 'piece',
|
|
38
|
+
checks: results.length,
|
|
39
|
+
explanation,
|
|
40
|
+
};
|
|
41
|
+
},
|
|
42
|
+
};
|
|
43
|
+
//# sourceMappingURL=removeAndRetry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"removeAndRetry.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/removeAndRetry.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,cAAc,GAAW;IACpC,IAAI,EAAE,gBAAgB;IACtB,IAAI,EAAE;QACJ,KAAK,EAAE,+EAA+E;QACtF,MAAM,EAAE,mDAAmD;QAC3D,KAAK,EAAE,wDAAwD;KAChE;IACD,KAAK,CAAC,IAAI,CAAC,KAAgB;QACzB,IAAI,CAAC,KAAK,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;QACtE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAC1B,MAAM,OAAO,GAAyC,EAAE,CAAC;QACzD,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;YAC9B,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACrE,uDAAuD;QACvD,MAAM,MAAM,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;QACtF,MAAM,WAAW,GAAG;YAClB,mCAAmC,KAAK,CAAC,QAAQ,CAAC,MAAM,uBAAuB,OAAO,CAAC,MAAM,WAAW;YACxG,QAAQ,CAAC,MAAM;gBACb,CAAC,CAAC,4DAA4D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBACpF,CAAC,CAAC,kGAAkG;YACtG,QAAQ,CAAC,MAAM,GAAG,CAAC;gBACjB,CAAC,CAAC,SAAS,QAAQ,CAAC,MAAM,iHAAiH;gBAC3I,CAAC,CAAC,EAAE;SACP;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO;YACL,MAAM,EAAE,gBAAgB;YACxB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC3C,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC;YACjB,SAAS,EAAE,QAAQ;YACnB,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,OAAO;YACpB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW;SACZ,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
export const shrinkToCause = {
|
|
2
|
+
name: 'shrinkToCause',
|
|
3
|
+
meta: {
|
|
4
|
+
label: 'Shrinks the suspect set to the smallest whose removal still fixes the answer',
|
|
5
|
+
method: 'delta-debugging minimization (ddmin) to the minimal recovering set',
|
|
6
|
+
paper: 'BugDoc, Lourenço et al. 2020 (SIGMOD)',
|
|
7
|
+
},
|
|
8
|
+
async find(input) {
|
|
9
|
+
if (!input.rerun)
|
|
10
|
+
throw new Error('shrinkToCause needs input.rerun');
|
|
11
|
+
const rerun = input.rerun;
|
|
12
|
+
const ids = input.suspects.map((s) => s.id);
|
|
13
|
+
let checks = 0;
|
|
14
|
+
const recovers = async (removed) => {
|
|
15
|
+
checks++;
|
|
16
|
+
return (await rerun(removed)).recovered;
|
|
17
|
+
};
|
|
18
|
+
// Precondition: removing everything must recover, else there is no removable cause here.
|
|
19
|
+
if (ids.length === 0 || !(await recovers(ids))) {
|
|
20
|
+
return {
|
|
21
|
+
finder: 'shrinkToCause',
|
|
22
|
+
suspects: ids.map((id) => ({ id })),
|
|
23
|
+
shortlist: [],
|
|
24
|
+
lead: undefined,
|
|
25
|
+
evidence: 'guessed',
|
|
26
|
+
granularity: 'piece',
|
|
27
|
+
checks,
|
|
28
|
+
explanation: `shrinkToCause: removing all ${ids.length} pieces did not recover — no single removable cause (over-determined or absent).`,
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
// ddmin: minimize the removal set that still recovers.
|
|
32
|
+
let candidates = [...ids];
|
|
33
|
+
let n = 2;
|
|
34
|
+
while (candidates.length > 1) {
|
|
35
|
+
const size = Math.ceil(candidates.length / n);
|
|
36
|
+
let reduced = false;
|
|
37
|
+
// a single chunk's removal already recovers → narrow to it
|
|
38
|
+
for (let i = 0; i < candidates.length; i += size) {
|
|
39
|
+
const chunk = candidates.slice(i, i + size);
|
|
40
|
+
if (chunk.length && (await recovers(chunk))) {
|
|
41
|
+
candidates = chunk;
|
|
42
|
+
n = 2;
|
|
43
|
+
reduced = true;
|
|
44
|
+
break;
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (!reduced) {
|
|
48
|
+
// removing a complement recovers → drop that chunk
|
|
49
|
+
for (let i = 0; i < candidates.length; i += size) {
|
|
50
|
+
const complement = [...candidates.slice(0, i), ...candidates.slice(i + size)];
|
|
51
|
+
if (complement.length && (await recovers(complement))) {
|
|
52
|
+
candidates = complement;
|
|
53
|
+
n = Math.max(n - 1, 2);
|
|
54
|
+
reduced = true;
|
|
55
|
+
break;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
if (!reduced) {
|
|
60
|
+
if (n >= candidates.length)
|
|
61
|
+
break;
|
|
62
|
+
n = Math.min(candidates.length, n * 2);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
const rest = ids.filter((id) => !candidates.includes(id));
|
|
66
|
+
const explanation = [
|
|
67
|
+
`shrinkToCause: delta-debugging minimization over ${ids.length} pieces in ${checks} checks.`,
|
|
68
|
+
`Minimal recovering set: ${candidates.join(', ')} (removing it flips the outcome; nothing smaller does).`,
|
|
69
|
+
checks < ids.length
|
|
70
|
+
? `Reached the cause in fewer checks than leave-one-out (${checks} vs ${ids.length}).`
|
|
71
|
+
: '',
|
|
72
|
+
]
|
|
73
|
+
.filter(Boolean)
|
|
74
|
+
.join('\n');
|
|
75
|
+
return {
|
|
76
|
+
finder: 'shrinkToCause',
|
|
77
|
+
suspects: [...candidates, ...rest].map((id) => ({ id })),
|
|
78
|
+
shortlist: candidates,
|
|
79
|
+
lead: candidates[0],
|
|
80
|
+
evidence: 'proven',
|
|
81
|
+
granularity: 'piece',
|
|
82
|
+
checks,
|
|
83
|
+
explanation,
|
|
84
|
+
};
|
|
85
|
+
},
|
|
86
|
+
};
|
|
87
|
+
//# sourceMappingURL=shrinkToCause.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"shrinkToCause.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/shrinkToCause.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
/** Deterministic LCG so the masking is reproducible across runs (and in tests). */
|
|
2
|
+
function lcg(seed) {
|
|
3
|
+
let s = seed >>> 0;
|
|
4
|
+
return () => {
|
|
5
|
+
s = (Math.imul(s, 1664525) + 1013904223) >>> 0;
|
|
6
|
+
return s / 0x100000000;
|
|
7
|
+
};
|
|
8
|
+
}
|
|
9
|
+
export const testManyCombos = {
|
|
10
|
+
name: 'testManyCombos',
|
|
11
|
+
meta: {
|
|
12
|
+
label: 'Turns pieces on/off in many combinations and learns which drive the answer',
|
|
13
|
+
method: 'random-subset ablation + linear-surrogate attribution, then one confirming ablation',
|
|
14
|
+
paper: 'ContextCite, Cohen-Wang et al. 2024 (arXiv:2409.00729)',
|
|
15
|
+
},
|
|
16
|
+
async find(input) {
|
|
17
|
+
if (!input.rerun)
|
|
18
|
+
throw new Error('testManyCombos needs input.rerun');
|
|
19
|
+
const rerun = input.rerun;
|
|
20
|
+
const ids = input.suspects.map((s) => s.id);
|
|
21
|
+
if (ids.length === 0) {
|
|
22
|
+
return {
|
|
23
|
+
finder: 'testManyCombos',
|
|
24
|
+
suspects: [],
|
|
25
|
+
shortlist: [],
|
|
26
|
+
evidence: 'guessed',
|
|
27
|
+
granularity: 'piece',
|
|
28
|
+
checks: 0,
|
|
29
|
+
explanation: 'testManyCombos: no suspects to test.',
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
const samples = Math.max(4, input.samples ?? Math.min(40, ids.length * 4));
|
|
33
|
+
const rand = lcg(0x9e3779b9 ^ ids.length);
|
|
34
|
+
// per-id recovery rate when the piece is removed vs kept
|
|
35
|
+
const stat = new Map(ids.map((id) => [id, { remHits: 0, remN: 0, keepHits: 0, keepN: 0 }]));
|
|
36
|
+
for (let k = 0; k < samples; k++) {
|
|
37
|
+
const removed = ids.filter(() => rand() < 0.5);
|
|
38
|
+
const removedSet = new Set(removed);
|
|
39
|
+
const recovered = (await rerun(removed)).recovered ? 1 : 0;
|
|
40
|
+
for (const id of ids) {
|
|
41
|
+
const st = stat.get(id);
|
|
42
|
+
if (removedSet.has(id)) {
|
|
43
|
+
st.remHits += recovered;
|
|
44
|
+
st.remN++;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
st.keepHits += recovered;
|
|
48
|
+
st.keepN++;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
// coefficient = P(recover | removed) − P(recover | kept): high ⇒ removing it fixes the answer
|
|
53
|
+
const scored = ids
|
|
54
|
+
.map((id) => {
|
|
55
|
+
const st = stat.get(id);
|
|
56
|
+
const remMean = st.remN ? st.remHits / st.remN : 0;
|
|
57
|
+
const keepMean = st.keepN ? st.keepHits / st.keepN : 0;
|
|
58
|
+
return { id, score: remMean - keepMean };
|
|
59
|
+
})
|
|
60
|
+
.sort((a, b) => b.score - a.score);
|
|
61
|
+
const lead = scored[0]?.id;
|
|
62
|
+
// confirm the top candidate with one clean single-piece ablation
|
|
63
|
+
let evidence = 'guessed';
|
|
64
|
+
let checks = samples;
|
|
65
|
+
if (lead) {
|
|
66
|
+
const r = await rerun([lead]);
|
|
67
|
+
checks++;
|
|
68
|
+
// 'proven' requires BOTH a positive learned contrast AND the lead flipping alone —
|
|
69
|
+
// guards against a degenerate rerun that recovers for every subset (no real signal,
|
|
70
|
+
// every score 0), which would otherwise falsely convict an arbitrary innocent.
|
|
71
|
+
evidence = r.recovered && (scored[0]?.score ?? 0) > 0 ? 'proven' : 'guessed';
|
|
72
|
+
}
|
|
73
|
+
const cutoff = Math.max(0.25, (scored[0]?.score ?? 0) / 2);
|
|
74
|
+
const shortlist = scored.filter((s) => s.score >= cutoff).map((s) => s.id);
|
|
75
|
+
const explanation = [
|
|
76
|
+
`testManyCombos: ran ${samples} random on/off combinations + 1 confirming check.`,
|
|
77
|
+
`Strongest learned effect: ${lead ?? '(none)'} (removing it most increases recovery).`,
|
|
78
|
+
evidence === 'proven'
|
|
79
|
+
? `Confirmed: removing ${lead} alone recovers the outcome.`
|
|
80
|
+
: `The top candidate did not confirm alone — treat as a guess (possible over-determination).`,
|
|
81
|
+
].join('\n');
|
|
82
|
+
return {
|
|
83
|
+
finder: 'testManyCombos',
|
|
84
|
+
suspects: scored,
|
|
85
|
+
lead,
|
|
86
|
+
shortlist: shortlist.length ? shortlist : lead ? [lead] : [],
|
|
87
|
+
evidence,
|
|
88
|
+
granularity: 'piece',
|
|
89
|
+
checks,
|
|
90
|
+
explanation,
|
|
91
|
+
};
|
|
92
|
+
},
|
|
93
|
+
};
|
|
94
|
+
//# sourceMappingURL=testManyCombos.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"testManyCombos.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/testManyCombos.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* traceSteps — the step-level finder. Traces backward through the agent's steps
|
|
3
|
+
* (tool-calls) from the failure to the most suspicious step, then optionally checks
|
|
4
|
+
* whether correcting that step recovers the outcome. Its UNIT is the STEP: if the
|
|
5
|
+
* root cause is a context element (an injected fact/instruction), that is outside
|
|
6
|
+
* this finder's vocabulary — pair it with rankSuspects/removeAndRetry for elements.
|
|
7
|
+
*
|
|
8
|
+
* Method: dependency-guided backward search + step-recovery counterfactual.
|
|
9
|
+
*/
|
|
10
|
+
import { scoreInfluence } from '../../../lib/influence-core/index.js';
|
|
11
|
+
export const traceSteps = {
|
|
12
|
+
name: 'traceSteps',
|
|
13
|
+
meta: {
|
|
14
|
+
label: 'Traces backward through the agent steps to the one that led to the wrong answer',
|
|
15
|
+
method: 'dependency-guided backward search + step-recovery counterfactual (step granularity)',
|
|
16
|
+
paper: 'FALAT, Rafi et al. 2026 (arXiv:2606.00765)',
|
|
17
|
+
},
|
|
18
|
+
async find(input) {
|
|
19
|
+
if (!input.steps || !input.embedder)
|
|
20
|
+
throw new Error('traceSteps needs input.steps and input.embedder');
|
|
21
|
+
const evidence = input.steps.map((s) => ({
|
|
22
|
+
id: s.id,
|
|
23
|
+
text: s.text,
|
|
24
|
+
ancestorTexts: [],
|
|
25
|
+
}));
|
|
26
|
+
const ranked = await scoreInfluence({
|
|
27
|
+
evidence,
|
|
28
|
+
finalAnswerText: input.wrongOutput,
|
|
29
|
+
embedder: input.embedder,
|
|
30
|
+
});
|
|
31
|
+
const topId = ranked[0]?.id;
|
|
32
|
+
const step = input.steps.find((s) => s.id === topId);
|
|
33
|
+
let recovers;
|
|
34
|
+
let checks = 0;
|
|
35
|
+
if (input.rerun && topId) {
|
|
36
|
+
const r = await input.rerun([topId]);
|
|
37
|
+
recovers = r.recovered;
|
|
38
|
+
checks = 1;
|
|
39
|
+
}
|
|
40
|
+
const explanation = [
|
|
41
|
+
`traceSteps: backward dependency search over ${input.steps.length} agent steps.`,
|
|
42
|
+
`Most suspicious step: ${step?.label ?? topId ?? '(none)'}.`,
|
|
43
|
+
recovers === undefined
|
|
44
|
+
? ''
|
|
45
|
+
: `Correcting that step ${recovers ? 'recovered' : 'did NOT recover'} the outcome.`,
|
|
46
|
+
`Granularity is the STEP — if the root cause is a context element, it is outside this finder's vocabulary.`,
|
|
47
|
+
]
|
|
48
|
+
.filter(Boolean)
|
|
49
|
+
.join('\n');
|
|
50
|
+
return {
|
|
51
|
+
finder: 'traceSteps',
|
|
52
|
+
suspects: ranked.map((s) => ({ id: s.id, score: s.score })),
|
|
53
|
+
lead: topId,
|
|
54
|
+
shortlist: topId ? [topId] : [],
|
|
55
|
+
evidence: input.rerun ? 'proven' : 'guessed',
|
|
56
|
+
granularity: 'step',
|
|
57
|
+
checks,
|
|
58
|
+
explanation,
|
|
59
|
+
};
|
|
60
|
+
},
|
|
61
|
+
};
|
|
62
|
+
//# sourceMappingURL=traceSteps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traceSteps.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/traceSteps.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,cAAc,EAAE,MAAM,sCAAsC,CAAC;AAGtE,MAAM,CAAC,MAAM,UAAU,GAAW;IAChC,IAAI,EAAE,YAAY;IAClB,IAAI,EAAE;QACJ,KAAK,EAAE,iFAAiF;QACxF,MAAM,EAAE,qFAAqF;QAC7F,KAAK,EAAE,4CAA4C;KACpD;IACD,KAAK,CAAC,IAAI,CAAC,KAAgB;QACzB,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ;YACjC,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACrE,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YACvC,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,aAAa,EAAE,EAAc;SAC9B,CAAC,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC;YAClC,QAAQ;YACR,eAAe,EAAE,KAAK,CAAC,WAAW;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;QAC5B,MAAM,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,KAAK,CAAC,CAAC;QACrD,IAAI,QAA6B,CAAC;QAClC,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,EAAE,CAAC;YACzB,MAAM,CAAC,GAAG,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,QAAQ,GAAG,CAAC,CAAC,SAAS,CAAC;YACvB,MAAM,GAAG,CAAC,CAAC;QACb,CAAC;QACD,MAAM,WAAW,GAAG;YAClB,+CAA+C,KAAK,CAAC,KAAK,CAAC,MAAM,eAAe;YAChF,yBAAyB,IAAI,EAAE,KAAK,IAAI,KAAK,IAAI,QAAQ,GAAG;YAC5D,QAAQ,KAAK,SAAS;gBACpB,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,wBAAwB,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,iBAAiB,eAAe;YACrF,2GAA2G;SAC5G;aACE,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,IAAI,CAAC,CAAC;QACd,OAAO;YACL,MAAM,EAAE,YAAY;YACpB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3D,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;YAC/B,QAAQ,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS;YAC5C,WAAW,EAAE,MAAM;YACnB,MAAM;YACN,WAAW;SACZ,CAAC;IACJ,CAAC;CACF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../../src/observability/contextError/finders/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compareFinders = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Run each finder on `input`; a finder that throws (e.g. missing a dep it needs)
|
|
6
|
+
* becomes a row with `result: null` and `error` set, so one finder cannot abort
|
|
7
|
+
* the comparison.
|
|
8
|
+
*/
|
|
9
|
+
async function compareFinders(finders, input) {
|
|
10
|
+
const rows = [];
|
|
11
|
+
for (const f of finders) {
|
|
12
|
+
try {
|
|
13
|
+
rows.push({ finder: f.name, result: await f.find(input) });
|
|
14
|
+
}
|
|
15
|
+
catch (e) {
|
|
16
|
+
rows.push({
|
|
17
|
+
finder: f.name,
|
|
18
|
+
result: null,
|
|
19
|
+
error: e instanceof Error ? e.message : String(e),
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
return rows;
|
|
24
|
+
}
|
|
25
|
+
exports.compareFinders = compareFinders;
|
|
26
|
+
//# sourceMappingURL=compareFinders.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compareFinders.js","sourceRoot":"","sources":["../../../../src/observability/contextError/finders/compareFinders.ts"],"names":[],"mappings":";;;AAeA;;;;GAIG;AACI,KAAK,UAAU,cAAc,CAClC,OAA0B,EAC1B,KAAgB;IAEhB,MAAM,IAAI,GAAiB,EAAE,CAAC;IAC9B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QAC7D,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,IAAI,CAAC,IAAI,CAAC;gBACR,MAAM,EAAE,CAAC,CAAC,IAAI;gBACd,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,CAAC,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;aAClD,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAjBD,wCAiBC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.compareFinders = exports.shrinkToCause = exports.testManyCombos = exports.traceSteps = exports.removeAndRetry = exports.rankSuspects = void 0;
|
|
4
|
+
var rankSuspects_js_1 = require("./rankSuspects.js");
|
|
5
|
+
Object.defineProperty(exports, "rankSuspects", { enumerable: true, get: function () { return rankSuspects_js_1.rankSuspects; } });
|
|
6
|
+
var removeAndRetry_js_1 = require("./removeAndRetry.js");
|
|
7
|
+
Object.defineProperty(exports, "removeAndRetry", { enumerable: true, get: function () { return removeAndRetry_js_1.removeAndRetry; } });
|
|
8
|
+
var traceSteps_js_1 = require("./traceSteps.js");
|
|
9
|
+
Object.defineProperty(exports, "traceSteps", { enumerable: true, get: function () { return traceSteps_js_1.traceSteps; } });
|
|
10
|
+
var testManyCombos_js_1 = require("./testManyCombos.js");
|
|
11
|
+
Object.defineProperty(exports, "testManyCombos", { enumerable: true, get: function () { return testManyCombos_js_1.testManyCombos; } });
|
|
12
|
+
var shrinkToCause_js_1 = require("./shrinkToCause.js");
|
|
13
|
+
Object.defineProperty(exports, "shrinkToCause", { enumerable: true, get: function () { return shrinkToCause_js_1.shrinkToCause; } });
|
|
14
|
+
var compareFinders_js_1 = require("./compareFinders.js");
|
|
15
|
+
Object.defineProperty(exports, "compareFinders", { enumerable: true, get: function () { return compareFinders_js_1.compareFinders; } });
|
|
16
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/observability/contextError/finders/index.ts"],"names":[],"mappings":";;;AA2BA,qDAAiD;AAAxC,+GAAA,YAAY,OAAA;AACrB,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AACnB,yDAAqD;AAA5C,mHAAA,cAAc,OAAA;AACvB,uDAAmD;AAA1C,iHAAA,aAAa,OAAA;AACtB,yDAAsE;AAA7D,mHAAA,cAAc,OAAA"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.rankSuspects = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* rankSuspects — the free, instant finder. Ranks context pieces by embedding
|
|
6
|
+
* influence on the wrong answer and says when it cannot confidently pick one
|
|
7
|
+
* (escalate). Zero model tokens (embeddings only); a guess, not a verdict.
|
|
8
|
+
*
|
|
9
|
+
* Method: four-signal embedding-influence composite + ranking-confidence escalation.
|
|
10
|
+
* Thin adapter over `scoreInfluence` / `rankingConfidence` (influence-core).
|
|
11
|
+
*/
|
|
12
|
+
const index_js_1 = require("../../../lib/influence-core/index.js");
|
|
13
|
+
exports.rankSuspects = {
|
|
14
|
+
name: 'rankSuspects',
|
|
15
|
+
meta: {
|
|
16
|
+
label: 'Ranks context pieces by how much each resembles the wrong answer (free)',
|
|
17
|
+
method: 'four-signal embedding-influence composite + ranking-confidence escalation',
|
|
18
|
+
paper: 'this work',
|
|
19
|
+
},
|
|
20
|
+
async find(input) {
|
|
21
|
+
if (!input.embedder)
|
|
22
|
+
throw new Error('rankSuspects needs input.embedder');
|
|
23
|
+
const evidence = input.suspects.map((s) => ({
|
|
24
|
+
id: s.id,
|
|
25
|
+
text: s.text,
|
|
26
|
+
ancestorTexts: [],
|
|
27
|
+
}));
|
|
28
|
+
const scores = await (0, index_js_1.scoreInfluence)({
|
|
29
|
+
evidence,
|
|
30
|
+
finalAnswerText: input.wrongOutput,
|
|
31
|
+
embedder: input.embedder,
|
|
32
|
+
});
|
|
33
|
+
const conf = (0, index_js_1.rankingConfidence)(scores);
|
|
34
|
+
const explanation = [
|
|
35
|
+
`rankSuspects: scored ${scores.length} context pieces by embedding influence on the wrong answer.`,
|
|
36
|
+
conf.clearWinner
|
|
37
|
+
? `Clear lead: ${conf.lead ?? '(none)'}.`
|
|
38
|
+
: `No clear winner → escalate; shortlist: ${conf.shortlist.join(', ') || '(none)'}.`,
|
|
39
|
+
`This is a guess (similarity proxy), not proof — confirm with removeAndRetry.`,
|
|
40
|
+
].join('\n');
|
|
41
|
+
return {
|
|
42
|
+
finder: 'rankSuspects',
|
|
43
|
+
suspects: scores.map((s) => ({ id: s.id, score: s.score })),
|
|
44
|
+
lead: conf.lead,
|
|
45
|
+
shortlist: [...conf.shortlist],
|
|
46
|
+
evidence: 'guessed',
|
|
47
|
+
granularity: 'piece',
|
|
48
|
+
checks: 0,
|
|
49
|
+
explanation,
|
|
50
|
+
};
|
|
51
|
+
},
|
|
52
|
+
};
|
|
53
|
+
//# sourceMappingURL=rankSuspects.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rankSuspects.js","sourceRoot":"","sources":["../../../../src/observability/contextError/finders/rankSuspects.ts"],"names":[],"mappings":";;;AAAA;;;;;;;GAOG;AACH,mEAAyF;AAG5E,QAAA,YAAY,GAAW;IAClC,IAAI,EAAE,cAAc;IACpB,IAAI,EAAE;QACJ,KAAK,EAAE,yEAAyE;QAChF,MAAM,EAAE,2EAA2E;QACnF,KAAK,EAAE,WAAW;KACnB;IACD,KAAK,CAAC,IAAI,CAAC,KAAgB;QACzB,IAAI,CAAC,KAAK,CAAC,QAAQ;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QAC1E,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1C,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,IAAI,EAAE,CAAC,CAAC,IAAI;YACZ,aAAa,EAAE,EAAc;SAC9B,CAAC,CAAC,CAAC;QACJ,MAAM,MAAM,GAAG,MAAM,IAAA,yBAAc,EAAC;YAClC,QAAQ;YACR,eAAe,EAAE,KAAK,CAAC,WAAW;YAClC,QAAQ,EAAE,KAAK,CAAC,QAAQ;SACzB,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,IAAA,4BAAiB,EAAC,MAAM,CAAC,CAAC;QACvC,MAAM,WAAW,GAAG;YAClB,wBAAwB,MAAM,CAAC,MAAM,6DAA6D;YAClG,IAAI,CAAC,WAAW;gBACd,CAAC,CAAC,eAAe,IAAI,CAAC,IAAI,IAAI,QAAQ,GAAG;gBACzC,CAAC,CAAC,0CAA0C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,QAAQ,GAAG;YACtF,8EAA8E;SAC/E,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACb,OAAO;YACL,MAAM,EAAE,cAAc;YACtB,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;YAC3D,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,SAAS,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;YAC9B,QAAQ,EAAE,SAAS;YACnB,WAAW,EAAE,OAAO;YACpB,MAAM,EAAE,CAAC;YACT,WAAW;SACZ,CAAC;IACJ,CAAC;CACF,CAAC"}
|