agentfootprint 6.29.0 → 6.31.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/esm/lib/context-bisect/ablation.js +20 -8
- package/dist/esm/lib/context-bisect/ablation.js.map +1 -1
- package/dist/esm/lib/context-bisect/index.js +1 -0
- package/dist/esm/lib/context-bisect/index.js.map +1 -1
- package/dist/esm/lib/context-bisect/localize.js +85 -3
- package/dist/esm/lib/context-bisect/localize.js.map +1 -1
- package/dist/esm/lib/context-bisect/restoration.js +39 -0
- package/dist/esm/lib/context-bisect/restoration.js.map +1 -0
- package/dist/esm/lib/context-bisect/types.js.map +1 -1
- package/dist/esm/lib/influence-core/contrastive.js +89 -0
- package/dist/esm/lib/influence-core/contrastive.js.map +1 -0
- package/dist/esm/lib/influence-core/index.js +1 -0
- package/dist/esm/lib/influence-core/index.js.map +1 -1
- package/dist/esm/lib/influence-core/signals.js +9 -4
- package/dist/esm/lib/influence-core/signals.js.map +1 -1
- package/dist/esm/observe.js +2 -2
- package/dist/esm/observe.js.map +1 -1
- package/dist/lib/context-bisect/ablation.js +22 -8
- package/dist/lib/context-bisect/ablation.js.map +1 -1
- package/dist/lib/context-bisect/index.js +3 -1
- package/dist/lib/context-bisect/index.js.map +1 -1
- package/dist/lib/context-bisect/localize.js +85 -3
- package/dist/lib/context-bisect/localize.js.map +1 -1
- package/dist/lib/context-bisect/restoration.js +43 -0
- package/dist/lib/context-bisect/restoration.js.map +1 -0
- package/dist/lib/context-bisect/types.js.map +1 -1
- package/dist/lib/influence-core/contrastive.js +93 -0
- package/dist/lib/influence-core/contrastive.js.map +1 -0
- package/dist/lib/influence-core/index.js +3 -1
- package/dist/lib/influence-core/index.js.map +1 -1
- package/dist/lib/influence-core/signals.js +11 -4
- package/dist/lib/influence-core/signals.js.map +1 -1
- package/dist/observe.js +4 -2
- package/dist/observe.js.map +1 -1
- package/dist/types/lib/context-bisect/ablation.d.ts +10 -2
- package/dist/types/lib/context-bisect/ablation.d.ts.map +1 -1
- package/dist/types/lib/context-bisect/index.d.ts +2 -1
- package/dist/types/lib/context-bisect/index.d.ts.map +1 -1
- package/dist/types/lib/context-bisect/localize.d.ts +14 -0
- package/dist/types/lib/context-bisect/localize.d.ts.map +1 -1
- package/dist/types/lib/context-bisect/restoration.d.ts +40 -0
- package/dist/types/lib/context-bisect/restoration.d.ts.map +1 -0
- package/dist/types/lib/context-bisect/types.d.ts +27 -1
- package/dist/types/lib/context-bisect/types.d.ts.map +1 -1
- package/dist/types/lib/influence-core/contrastive.d.ts +27 -0
- package/dist/types/lib/influence-core/contrastive.d.ts.map +1 -0
- package/dist/types/lib/influence-core/index.d.ts +1 -0
- package/dist/types/lib/influence-core/index.d.ts.map +1 -1
- package/dist/types/lib/influence-core/signals.d.ts +8 -0
- package/dist/types/lib/influence-core/signals.d.ts.map +1 -1
- package/dist/types/observe.d.ts +2 -2
- package/dist/types/observe.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
* score elsewhere is a correlational proxy.
|
|
27
27
|
*/
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.verdictFor = exports.probeFlipped = exports.runAblationProbe = exports.defaultOutcomeComparator = exports.applyAblations = exports.ablationForSuspect = void 0;
|
|
29
|
+
exports.verdictFor = exports.probeFlipped = exports.runAblationProbe = exports.defaultOutcomeComparator = exports.similarityStats = exports.resolveSamples = exports.applyAblations = exports.ablationForSuspect = void 0;
|
|
30
30
|
const cosine_js_1 = require("../../memory/embedding/cosine.js");
|
|
31
31
|
const types_js_1 = require("./types.js");
|
|
32
32
|
// ─── Adapters: suspect → spec ────────────────────────────────────────
|
|
@@ -101,6 +101,13 @@ function applyAblations(specs, targets) {
|
|
|
101
101
|
}
|
|
102
102
|
exports.applyAblations = applyAblations;
|
|
103
103
|
// ─── The probe engine (D9 stats) ─────────────────────────────────────
|
|
104
|
+
/** Resolve the seeded-rerun count: default on non-finite, floor, clamp to >= 2
|
|
105
|
+
* (no single-run verdicts — D9). Shared by the ablation + restoration probes. */
|
|
106
|
+
function resolveSamples(samples) {
|
|
107
|
+
const raw = samples ?? types_js_1.CONTEXT_BISECT_DEFAULTS.samples;
|
|
108
|
+
return Math.max(2, Number.isFinite(raw) ? Math.floor(raw) : types_js_1.CONTEXT_BISECT_DEFAULTS.samples);
|
|
109
|
+
}
|
|
110
|
+
exports.resolveSamples = resolveSamples;
|
|
104
111
|
function similarityStats(values) {
|
|
105
112
|
if (values.length === 0)
|
|
106
113
|
return { mean: 0, min: 0, max: 0, stdev: 0 };
|
|
@@ -113,6 +120,7 @@ function similarityStats(values) {
|
|
|
113
120
|
stdev: Math.sqrt(variance),
|
|
114
121
|
};
|
|
115
122
|
}
|
|
123
|
+
exports.similarityStats = similarityStats;
|
|
116
124
|
/** The default comparator: embedding similarity below the threshold. */
|
|
117
125
|
function defaultOutcomeComparator(embedder, flipThreshold) {
|
|
118
126
|
return async (original, ablated) => {
|
|
@@ -132,7 +140,7 @@ exports.defaultOutcomeComparator = defaultOutcomeComparator;
|
|
|
132
140
|
* `samples` is clamped to ≥ 2 — D9: never single-run verdicts.
|
|
133
141
|
*/
|
|
134
142
|
async function runAblationProbe(config, specs) {
|
|
135
|
-
const samples =
|
|
143
|
+
const samples = resolveSamples(config.rerun.samples);
|
|
136
144
|
const flipThreshold = config.rerun.flipThreshold ?? types_js_1.CONTEXT_BISECT_DEFAULTS.flipThreshold;
|
|
137
145
|
const outcomeChanged = config.rerun.outcomeChanged ?? defaultOutcomeComparator(config.embedder, flipThreshold);
|
|
138
146
|
const similarities = [];
|
|
@@ -159,18 +167,24 @@ exports.probeFlipped = probeFlipped;
|
|
|
159
167
|
* forces `'inconclusive'`: no ablation verdict is trustworthy on an
|
|
160
168
|
* unstable baseline.
|
|
161
169
|
*/
|
|
162
|
-
function verdictFor(label, stats, baselineStable
|
|
170
|
+
function verdictFor(label, stats, baselineStable,
|
|
171
|
+
/** The counterfactual intervention. `'ablating'` (default) for present
|
|
172
|
+
* suspects; `'restoring'` for missing-context candidates (interface #3).
|
|
173
|
+
* Default keeps every claim string byte-identical to before. */
|
|
174
|
+
action = 'ablating') {
|
|
175
|
+
const baselineWord = action === 'ablating' ? 'un-ablated' : 'un-restored';
|
|
176
|
+
const tierWord = action === 'ablating' ? 'ablation' : 'restoration';
|
|
163
177
|
if (!baselineStable) {
|
|
164
178
|
return {
|
|
165
179
|
verdict: 'inconclusive',
|
|
166
|
-
claim: `INCONCLUSIVE: the
|
|
167
|
-
`no
|
|
180
|
+
claim: `INCONCLUSIVE: the ${baselineWord} baseline itself changed outcome across seeded reruns — ` +
|
|
181
|
+
`no ${tierWord} verdict for ${label} is trustworthy on an unstable scenario.`,
|
|
168
182
|
};
|
|
169
183
|
}
|
|
170
184
|
if (probeFlipped(stats)) {
|
|
171
185
|
return {
|
|
172
186
|
verdict: 'confirmed',
|
|
173
|
-
claim: `CAUSAL:
|
|
187
|
+
claim: `CAUSAL: ${action} ${label} flipped the outcome in ${stats.flips}/${stats.samples} ` +
|
|
174
188
|
`seeded reruns (mean similarity to original ${stats.similarity.mean.toFixed(3)} ` +
|
|
175
189
|
`± ${stats.similarity.stdev.toFixed(3)}).`,
|
|
176
190
|
};
|
|
@@ -178,13 +192,13 @@ function verdictFor(label, stats, baselineStable) {
|
|
|
178
192
|
if (stats.flips > 0) {
|
|
179
193
|
return {
|
|
180
194
|
verdict: 'inconclusive',
|
|
181
|
-
claim: `INCONCLUSIVE:
|
|
195
|
+
claim: `INCONCLUSIVE: ${action} ${label} flipped only ${stats.flips}/${stats.samples} seeded ` +
|
|
182
196
|
`reruns — below majority; raise samples or check scenario stability.`,
|
|
183
197
|
};
|
|
184
198
|
}
|
|
185
199
|
return {
|
|
186
200
|
verdict: 'not-confirmed',
|
|
187
|
-
claim: `NOT CONFIRMED:
|
|
201
|
+
claim: `NOT CONFIRMED: ${action} ${label} did not change the outcome in ${stats.samples} seeded ` +
|
|
188
202
|
`reruns — its ranking remains a correlational proxy only.`,
|
|
189
203
|
};
|
|
190
204
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ablation.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/ablation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ablation.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/ablation.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,13 +16,15 @@
|
|
|
16
16
|
* claims; slice completeness is bounded by tracking — and says so.
|
|
17
17
|
*/
|
|
18
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
19
|
-
exports.CONTEXT_BISECT_DEFAULTS = exports.bisectCulprits = exports.verdictFor = exports.runAblationProbe = exports.probeFlipped = exports.defaultOutcomeComparator = exports.applyAblations = exports.ablationForSuspect = exports.toBacktrackTrace = exports.suspectLabel = exports.localizeContextBug = exports.llmCallIdsFromEvents = exports.formatContextBugReport = exports.defaultSuspectClassifier = exports.findDroppedContext = exports.stepOutputText = exports.llmEdgeWeigher = void 0;
|
|
19
|
+
exports.CONTEXT_BISECT_DEFAULTS = exports.bisectCulprits = exports.verdictFor = exports.runAblationProbe = exports.probeFlipped = exports.defaultOutcomeComparator = exports.applyAblations = exports.ablationForSuspect = exports.toBacktrackTrace = exports.suspectLabel = exports.localizeContextBug = exports.llmCallIdsFromEvents = exports.formatContextBugReport = exports.defaultSuspectClassifier = exports.runRestorationProbe = exports.findDroppedContext = exports.stepOutputText = exports.llmEdgeWeigher = void 0;
|
|
20
20
|
var llmEdgeWeigher_js_1 = require("./llmEdgeWeigher.js");
|
|
21
21
|
Object.defineProperty(exports, "llmEdgeWeigher", { enumerable: true, get: function () { return llmEdgeWeigher_js_1.llmEdgeWeigher; } });
|
|
22
22
|
Object.defineProperty(exports, "stepOutputText", { enumerable: true, get: function () { return llmEdgeWeigher_js_1.stepOutputText; } });
|
|
23
23
|
// Interface #3 — missing-context finder (available − sent; confirm by restoration).
|
|
24
24
|
var missingContext_js_1 = require("./missingContext.js");
|
|
25
25
|
Object.defineProperty(exports, "findDroppedContext", { enumerable: true, get: function () { return missingContext_js_1.findDroppedContext; } });
|
|
26
|
+
var restoration_js_1 = require("./restoration.js");
|
|
27
|
+
Object.defineProperty(exports, "runRestorationProbe", { enumerable: true, get: function () { return restoration_js_1.runRestorationProbe; } });
|
|
26
28
|
var localize_js_1 = require("./localize.js");
|
|
27
29
|
Object.defineProperty(exports, "defaultSuspectClassifier", { enumerable: true, get: function () { return localize_js_1.defaultSuspectClassifier; } });
|
|
28
30
|
Object.defineProperty(exports, "formatContextBugReport", { enumerable: true, get: function () { return localize_js_1.formatContextBugReport; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH,yDAM6B;AAL3B,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AAMhB,oFAAoF;AACpF,yDAK6B;AAJ3B,uHAAA,kBAAkB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;GAeG;;;AAEH,yDAM6B;AAL3B,mHAAA,cAAc,OAAA;AACd,mHAAA,cAAc,OAAA;AAMhB,oFAAoF;AACpF,yDAK6B;AAJ3B,uHAAA,kBAAkB,OAAA;AAKpB,mDAK0B;AAJxB,qHAAA,mBAAmB,OAAA;AAMrB,6CAUuB;AATrB,uHAAA,wBAAwB,OAAA;AACxB,qHAAA,sBAAsB,OAAA;AACtB,mHAAA,oBAAoB,OAAA;AACpB,iHAAA,kBAAkB,OAAA;AAClB,2GAAA,YAAY,OAAA;AAOd,6DAQ+B;AAP7B,uHAAA,gBAAgB,OAAA;AASlB,6CASuB;AARrB,iHAAA,kBAAkB,OAAA;AAClB,6GAAA,cAAc,OAAA;AACd,uHAAA,wBAAwB,OAAA;AACxB,2GAAA,YAAY,OAAA;AACZ,+GAAA,gBAAgB,OAAA;AAChB,yGAAA,UAAU,OAAA;AAKZ,yCAKqB;AAJnB,2GAAA,cAAc,OAAA;AAMhB,uCAsBoB;AArBlB,mHAAA,uBAAuB,OAAA"}
|
|
@@ -35,6 +35,8 @@ const trace_1 = require("footprintjs/trace");
|
|
|
35
35
|
const index_js_1 = require("../influence-core/index.js");
|
|
36
36
|
const ablation_js_1 = require("./ablation.js");
|
|
37
37
|
const llmEdgeWeigher_js_1 = require("./llmEdgeWeigher.js");
|
|
38
|
+
const missingContext_js_1 = require("./missingContext.js");
|
|
39
|
+
const restoration_js_1 = require("./restoration.js");
|
|
38
40
|
const types_js_1 = require("./types.js");
|
|
39
41
|
// ─── LLM-call id extraction ──────────────────────────────────────────
|
|
40
42
|
/**
|
|
@@ -352,6 +354,27 @@ async function localizeContextBug(options) {
|
|
|
352
354
|
// ── Slice stats + honesty flags ─────────────────────────────────────
|
|
353
355
|
const sliceStats = buildSliceStats(root, nodes, maxDepth, maxNodes);
|
|
354
356
|
const honestyFlags = buildHonestyFlags(artifacts, index, sliceStats, llmCallIds.length);
|
|
357
|
+
// ── 5b. Missing-context tier (interface #3) ─────────────────────────
|
|
358
|
+
// Independent of ablation: finds what was available but never sent, and —
|
|
359
|
+
// with a restoration runner — confirms each by restoration (the causal mirror).
|
|
360
|
+
const missing = options.missingContext
|
|
361
|
+
? await runMissingContextTier(options.missingContext, embedder)
|
|
362
|
+
: undefined;
|
|
363
|
+
const dropped = missing?.candidates;
|
|
364
|
+
// A restoration verdict (even not-confirmed) is a causal-tier statement.
|
|
365
|
+
const restorationRan = dropped?.some((d) => d.verdict !== undefined) ?? false;
|
|
366
|
+
// Mirror ablation's honesty: an unstable un-restored baseline (the buggy
|
|
367
|
+
// output itself not reproducing) invalidates every restoration verdict —
|
|
368
|
+
// surface it as a machine-readable flag, not just inside each claim string.
|
|
369
|
+
const restorationFlags = missing?.baseline !== undefined && !missing.baselineStable
|
|
370
|
+
? [
|
|
371
|
+
{
|
|
372
|
+
flag: 'baseline-unstable',
|
|
373
|
+
note: `the un-restored baseline changed outcome in ${missing.baseline.flips}/${missing.baseline.samples} ` +
|
|
374
|
+
'seeded reruns — all restoration verdicts are inconclusive.',
|
|
375
|
+
},
|
|
376
|
+
]
|
|
377
|
+
: [];
|
|
355
378
|
// ── 5. Ablate (the causal tier) ─────────────────────────────────────
|
|
356
379
|
if (options.rerun === undefined) {
|
|
357
380
|
return {
|
|
@@ -359,10 +382,12 @@ async function localizeContextBug(options) {
|
|
|
359
382
|
stepName: root.stageName,
|
|
360
383
|
triggerSource,
|
|
361
384
|
...(triggerScore !== undefined ? { triggerScore } : {}),
|
|
362
|
-
mode: 'correlational',
|
|
385
|
+
mode: restorationRan ? 'causal' : 'correlational',
|
|
363
386
|
suspects: ranked,
|
|
387
|
+
...(dropped ? { dropped } : {}),
|
|
364
388
|
sliceStats,
|
|
365
|
-
honestyFlags,
|
|
389
|
+
honestyFlags: [...honestyFlags, ...restorationFlags],
|
|
390
|
+
...(missing?.baseline !== undefined ? { restorationBaseline: missing.baseline } : {}),
|
|
366
391
|
};
|
|
367
392
|
}
|
|
368
393
|
const probeConfig = { rerun: options.rerun, embedder };
|
|
@@ -401,12 +426,50 @@ async function localizeContextBug(options) {
|
|
|
401
426
|
...(triggerScore !== undefined ? { triggerScore } : {}),
|
|
402
427
|
mode: 'causal',
|
|
403
428
|
suspects: withVerdicts,
|
|
429
|
+
...(dropped ? { dropped } : {}),
|
|
404
430
|
sliceStats,
|
|
405
|
-
honestyFlags: flags,
|
|
431
|
+
honestyFlags: [...flags, ...restorationFlags],
|
|
406
432
|
baseline,
|
|
433
|
+
...(missing?.baseline !== undefined ? { restorationBaseline: missing.baseline } : {}),
|
|
407
434
|
};
|
|
408
435
|
}
|
|
409
436
|
exports.localizeContextBug = localizeContextBug;
|
|
437
|
+
/**
|
|
438
|
+
* Interface #3 tier: find context available but not sent, and — with a
|
|
439
|
+
* restoration runner — confirm each by restoration (the mirror of ablation).
|
|
440
|
+
* Without a runner, returns the dropped units as candidates (no verdicts).
|
|
441
|
+
* Only the first `maxCandidates` dropped units are probed (REAL LLM re-runs);
|
|
442
|
+
* the rest are listed as bare candidates (`verdict`/`runs` undefined), exactly
|
|
443
|
+
* like the ablation tier leaves over-budget suspects verdict-less.
|
|
444
|
+
*/
|
|
445
|
+
async function runMissingContextTier(missing, embedder) {
|
|
446
|
+
const { dropped } = (0, missingContext_js_1.findDroppedContext)(missing.available, missing.sent);
|
|
447
|
+
const asCandidate = (u) => u.content === undefined ? { id: u.id } : { id: u.id, content: u.content };
|
|
448
|
+
// Nothing dropped → no candidates and NO baseline probe (don't spend real
|
|
449
|
+
// model calls confirming an empty set — the common healthy case).
|
|
450
|
+
if (dropped.length === 0)
|
|
451
|
+
return { candidates: [], baselineStable: true };
|
|
452
|
+
if (missing.rerun === undefined)
|
|
453
|
+
return { candidates: dropped.map(asCandidate), baselineStable: true };
|
|
454
|
+
const config = { rerun: missing.rerun, embedder };
|
|
455
|
+
const maxCandidates = missing.rerun.maxCandidates ?? 5;
|
|
456
|
+
// Baseline: restoring nothing must reproduce the buggy output (stable).
|
|
457
|
+
const baseline = await (0, restoration_js_1.runRestorationProbe)(config, []);
|
|
458
|
+
const baselineStable = baseline.flips === 0;
|
|
459
|
+
const out = [];
|
|
460
|
+
let restored = 0;
|
|
461
|
+
for (const unit of dropped) {
|
|
462
|
+
if (restored >= maxCandidates) {
|
|
463
|
+
out.push(asCandidate(unit)); // over budget — listed, not probed (no verdict)
|
|
464
|
+
continue;
|
|
465
|
+
}
|
|
466
|
+
restored++;
|
|
467
|
+
const runs = await (0, restoration_js_1.runRestorationProbe)(config, [unit]);
|
|
468
|
+
const verdict = (0, ablation_js_1.verdictFor)(`dropped "${unit.id}"`, runs, baselineStable, 'restoring');
|
|
469
|
+
out.push({ ...asCandidate(unit), runs, verdict });
|
|
470
|
+
}
|
|
471
|
+
return { candidates: out, baseline, baselineStable };
|
|
472
|
+
}
|
|
410
473
|
// ─── Internals ───────────────────────────────────────────────────────
|
|
411
474
|
function collectNodes(root) {
|
|
412
475
|
const out = [];
|
|
@@ -545,10 +608,29 @@ function formatContextBugReport(report) {
|
|
|
545
608
|
lines.push(' verdict: (none — correlational ranking only; supply an AblationRunner to test causally)');
|
|
546
609
|
}
|
|
547
610
|
});
|
|
611
|
+
// Missing-context tier (interface #3) — symmetric with the SUSPECTS block.
|
|
612
|
+
if (report.dropped !== undefined && report.dropped.length > 0) {
|
|
613
|
+
lines.push('', `MISSING CONTEXT (${report.dropped.length} dropped — available but never sent to the model):`);
|
|
614
|
+
report.dropped.forEach((c, i) => {
|
|
615
|
+
lines.push(`${String(i + 1).padStart(2)}. [dropped '${c.id}']`);
|
|
616
|
+
if (c.verdict !== undefined && c.runs !== undefined) {
|
|
617
|
+
lines.push(` verdict: ${c.verdict.claim}`);
|
|
618
|
+
lines.push(` runs: ${c.runs.flips}/${c.runs.samples} flipped on restore · similarity to original ` +
|
|
619
|
+
`${c.runs.similarity.mean.toFixed(3)} ± ${c.runs.similarity.stdev.toFixed(3)}`);
|
|
620
|
+
}
|
|
621
|
+
else {
|
|
622
|
+
lines.push(' verdict: (none — candidate only; supply missingContext.rerun to confirm by restoration)');
|
|
623
|
+
}
|
|
624
|
+
});
|
|
625
|
+
}
|
|
548
626
|
if (report.baseline !== undefined) {
|
|
549
627
|
lines.push('', `baseline (no ablation): ${report.baseline.flips}/${report.baseline.samples} flipped · ` +
|
|
550
628
|
`similarity ${report.baseline.similarity.mean.toFixed(3)} ± ${report.baseline.similarity.stdev.toFixed(3)}`);
|
|
551
629
|
}
|
|
630
|
+
if (report.restorationBaseline !== undefined) {
|
|
631
|
+
lines.push(`baseline (no restoration): ${report.restorationBaseline.flips}/${report.restorationBaseline.samples} flipped · ` +
|
|
632
|
+
`similarity ${report.restorationBaseline.similarity.mean.toFixed(3)} ± ${report.restorationBaseline.similarity.stdev.toFixed(3)}`);
|
|
633
|
+
}
|
|
552
634
|
if (report.honestyFlags.length > 0) {
|
|
553
635
|
lines.push('', 'HONESTY:');
|
|
554
636
|
for (const flag of report.honestyFlags)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"localize.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/localize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"localize.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/localize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runRestorationProbe = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* restoration — RFC-003 Part B: the causal tier for the missing-context finder
|
|
6
|
+
* (interface #3), the MIRROR of ablation (D8's restoration half).
|
|
7
|
+
*
|
|
8
|
+
* Ablation confirms a PRESENT culprit by removing it and watching the outcome
|
|
9
|
+
* flip. Restoration confirms an ABSENT culprit (a unit `findDroppedContext`
|
|
10
|
+
* surfaced) by adding it BACK and watching the outcome flip. Same seeded-rerun
|
|
11
|
+
* discipline, same verdict rule (`verdictFor(..., 'restoring')`), same honest
|
|
12
|
+
* baseline check — only the intervention is inverted.
|
|
13
|
+
*
|
|
14
|
+
* The re-run is consumer-owned (the library doesn't own your agent loop), just
|
|
15
|
+
* like `AblationRunner`. `RestorationRunner` receives the units to add back
|
|
16
|
+
* (`[]` = the un-restored baseline) plus a seed, and returns the run's output.
|
|
17
|
+
*/
|
|
18
|
+
const cosine_js_1 = require("../../memory/embedding/cosine.js");
|
|
19
|
+
const ablation_js_1 = require("./ablation.js");
|
|
20
|
+
const types_js_1 = require("./types.js");
|
|
21
|
+
/**
|
|
22
|
+
* Run ONE restoration probe: call the consumer's runner with `units` restored
|
|
23
|
+
* once per seed, measure each output's similarity to the original, count flips.
|
|
24
|
+
* `[]` units = the un-restored baseline. Mirror of `runAblationProbe`.
|
|
25
|
+
*/
|
|
26
|
+
async function runRestorationProbe(config, units) {
|
|
27
|
+
const samples = (0, ablation_js_1.resolveSamples)(config.rerun.samples);
|
|
28
|
+
const flipThreshold = config.rerun.flipThreshold ?? types_js_1.CONTEXT_BISECT_DEFAULTS.flipThreshold;
|
|
29
|
+
const outcomeChanged = config.rerun.outcomeChanged ?? (0, ablation_js_1.defaultOutcomeComparator)(config.embedder, flipThreshold);
|
|
30
|
+
const similarities = [];
|
|
31
|
+
let flips = 0;
|
|
32
|
+
const originalVec = await config.embedder.embed({ text: config.rerun.originalOutput });
|
|
33
|
+
for (let seed = 0; seed < samples; seed++) {
|
|
34
|
+
const output = await config.rerun.runner(units, { seed });
|
|
35
|
+
const outputVec = await config.embedder.embed({ text: output });
|
|
36
|
+
similarities.push((0, cosine_js_1.cosineSimilarity)(originalVec, outputVec));
|
|
37
|
+
if (await outcomeChanged(config.rerun.originalOutput, output))
|
|
38
|
+
flips++;
|
|
39
|
+
}
|
|
40
|
+
return { samples, flips, similarity: (0, ablation_js_1.similarityStats)(similarities) };
|
|
41
|
+
}
|
|
42
|
+
exports.runRestorationProbe = runRestorationProbe;
|
|
43
|
+
//# sourceMappingURL=restoration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"restoration.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/restoration.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;GAaG;AACH,gEAAoE;AAEpE,+CAA0F;AAG1F,yCAAqD;AAoCrD;;;;GAIG;AACI,KAAK,UAAU,mBAAmB,CACvC,MAA8B,EAC9B,KAA6B;IAE7B,MAAM,OAAO,GAAG,IAAA,4BAAc,EAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,aAAa,IAAI,kCAAuB,CAAC,aAAa,CAAC;IAC1F,MAAM,cAAc,GAClB,MAAM,CAAC,KAAK,CAAC,cAAc,IAAI,IAAA,sCAAwB,EAAC,MAAM,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IAE1F,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACvF,KAAK,IAAI,IAAI,GAAG,CAAC,EAAE,IAAI,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,CAAC;QAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QAC1D,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;QAChE,YAAY,CAAC,IAAI,CAAC,IAAA,4BAAgB,EAAC,WAAW,EAAE,SAAS,CAAC,CAAC,CAAC;QAC5D,IAAI,MAAM,cAAc,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE,MAAM,CAAC;YAAE,KAAK,EAAE,CAAC;IACzE,CAAC;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,IAAA,6BAAe,EAAC,YAAY,CAAC,EAAE,CAAC;AACvE,CAAC;AAnBD,kDAmBC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;;;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/lib/context-bisect/types.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;;;AAoVH,wEAAwE;AAE3D,QAAA,uBAAuB,GAAG;IACrC,uDAAuD;IACvD,QAAQ,EAAE,EAAE;IACZ,sDAAsD;IACtD,QAAQ,EAAE,EAAE;IACZ,0CAA0C;IAC1C,WAAW,EAAE,EAAE;IACf,4DAA4D;IAC5D,YAAY,EAAE,IAAI;IAClB,yEAAyE;IACzE,OAAO,EAAE,CAAC;IACV,mEAAmE;IACnE,aAAa,EAAE,GAAG;IAClB,mDAAmD;IACnD,SAAS,EAAE,EAAE;IACb,8DAA8D;IAC9D,WAAW,EAAE,CAAC;CACN,CAAC"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.scoreContrastiveInfluence = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* contrastive — influence scoring against a REFERENCE output (RFC-003).
|
|
6
|
+
*
|
|
7
|
+
* Pattern: a SEPARATE, opt-in second stage over the four-signal scorer — not a
|
|
8
|
+
* modification of `scoreInfluence`. Same `InfluenceScore[]` return, so
|
|
9
|
+
* `rankingConfidence` and the rest compose on it unchanged.
|
|
10
|
+
* Role: `src/lib/influence-core/` leaf, sibling to `scoreInfluence`.
|
|
11
|
+
*
|
|
12
|
+
* ## Why this exists (the topical-innocent confound)
|
|
13
|
+
*
|
|
14
|
+
* Plain output-similarity (`scoreInfluence`'s FA) ranks a source by how much it
|
|
15
|
+
* resembles the actual answer. That is confounded by **topically-central
|
|
16
|
+
* innocents**: the policy a refund decision is *about* resembles ANY refund
|
|
17
|
+
* output — right or wrong — so it can out-rank the source that actually caused
|
|
18
|
+
* the wrong one. The fix: score by CONTRAST against a reference output (a
|
|
19
|
+
* known-good / expected / prior-good run). A topical innocent is similar to
|
|
20
|
+
* BOTH outputs, so it cancels (~0 contrast); the real culprit is similar to the
|
|
21
|
+
* WRONG output specifically, so it stands out.
|
|
22
|
+
*
|
|
23
|
+
* contrastive FA(e) = sim(e, answer) − sim(e, reference)
|
|
24
|
+
*
|
|
25
|
+
* Everything else (the AVG / PERSIST / DEPTH reasoning-trace signals, the
|
|
26
|
+
* composite, adaptive weights) is shared with `scoreInfluence` verbatim — only
|
|
27
|
+
* the FA term is contrastive.
|
|
28
|
+
*
|
|
29
|
+
* Honest claim (RFC-002 §2): still an embedding-geometry PROXY, never causal —
|
|
30
|
+
* the contrast removes a confound, it does not prove causation. Ablation is the
|
|
31
|
+
* causal tier. And it is OPT-IN: it needs a reference output, so it is for
|
|
32
|
+
* regression / eval debugging (you have a prior-good or expected output), not
|
|
33
|
+
* cold localization — without a reference, use `scoreInfluence`.
|
|
34
|
+
*/
|
|
35
|
+
const cosine_js_1 = require("../../memory/embedding/cosine.js");
|
|
36
|
+
const signals_js_1 = require("./signals.js");
|
|
37
|
+
const types_js_1 = require("./types.js");
|
|
38
|
+
/**
|
|
39
|
+
* Score evidence by CONTRASTIVE influence: `sim(e, answer) − sim(e, reference)`
|
|
40
|
+
* for the FA term, the four-signal composite otherwise. Returns `InfluenceScore[]`
|
|
41
|
+
* sorted descending — drop-in compatible with `scoreInfluence` consumers
|
|
42
|
+
* (`rankingConfidence`, etc.).
|
|
43
|
+
*
|
|
44
|
+
* @throws when an evidence id is duplicated (same contract as `scoreInfluence`).
|
|
45
|
+
*/
|
|
46
|
+
async function scoreContrastiveInfluence(args) {
|
|
47
|
+
const weights = args.weights ?? types_js_1.DEFAULT_INFLUENCE_WEIGHTS;
|
|
48
|
+
const threshold = args.persistenceThreshold ?? types_js_1.DEFAULT_PERSISTENCE_THRESHOLD;
|
|
49
|
+
assertUniqueIds(args.evidence);
|
|
50
|
+
(0, signals_js_1.assertValidWeights)(weights, 'scoreContrastiveInfluence');
|
|
51
|
+
// ONE deduplicated embedding pass over every distinct text (answer + reference
|
|
52
|
+
// + evidence + ancestors).
|
|
53
|
+
const texts = new Set([args.answerText, args.referenceText]);
|
|
54
|
+
for (const item of args.evidence) {
|
|
55
|
+
texts.add(item.text);
|
|
56
|
+
for (const ancestor of item.ancestorTexts)
|
|
57
|
+
texts.add(ancestor);
|
|
58
|
+
}
|
|
59
|
+
const vectorByText = await (0, signals_js_1.embedAll)(args.embedder, [...texts], args.signal);
|
|
60
|
+
const answerVec = vectorByText.get(args.answerText);
|
|
61
|
+
const referenceVec = vectorByText.get(args.referenceText);
|
|
62
|
+
const scored = args.evidence.map((item) => {
|
|
63
|
+
const evidenceVec = vectorByText.get(item.text);
|
|
64
|
+
const ancestorVecs = item.ancestorTexts.map((t) => vectorByText.get(t));
|
|
65
|
+
// The only contrastive term: answer-similarity MINUS reference-similarity.
|
|
66
|
+
const faContrast = (0, cosine_js_1.cosineSimilarity)(evidenceVec, answerVec) - (0, cosine_js_1.cosineSimilarity)(evidenceVec, referenceVec);
|
|
67
|
+
const signals = {
|
|
68
|
+
fa: faContrast,
|
|
69
|
+
avg: (0, signals_js_1.averageRelevancy)(evidenceVec, ancestorVecs),
|
|
70
|
+
persist: (0, signals_js_1.persistence)(evidenceVec, ancestorVecs, threshold),
|
|
71
|
+
depth: (0, signals_js_1.structuralProximity)(ancestorVecs.length),
|
|
72
|
+
};
|
|
73
|
+
const effective = (0, signals_js_1.adaptWeights)(weights, ancestorVecs.length);
|
|
74
|
+
return {
|
|
75
|
+
id: item.id,
|
|
76
|
+
signals,
|
|
77
|
+
weights: effective.weights,
|
|
78
|
+
adapted: effective.adapted,
|
|
79
|
+
score: (0, signals_js_1.compositeScore)(signals, effective.weights),
|
|
80
|
+
};
|
|
81
|
+
});
|
|
82
|
+
return scored.sort((a, b) => b.score - a.score);
|
|
83
|
+
}
|
|
84
|
+
exports.scoreContrastiveInfluence = scoreContrastiveInfluence;
|
|
85
|
+
function assertUniqueIds(evidence) {
|
|
86
|
+
const seen = new Set();
|
|
87
|
+
for (const e of evidence) {
|
|
88
|
+
if (seen.has(e.id))
|
|
89
|
+
throw new Error(`scoreContrastiveInfluence: duplicate evidence id "${e.id}"`);
|
|
90
|
+
seen.add(e.id);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=contrastive.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contrastive.js","sourceRoot":"","sources":["../../../src/lib/influence-core/contrastive.ts"],"names":[],"mappings":";;;AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,gEAAoE;AACpE,6CAQsB;AAEtB,yCAAsF;AAmBtF;;;;;;;GAOG;AACI,KAAK,UAAU,yBAAyB,CAC7C,IAAmC;IAEnC,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,oCAAyB,CAAC;IAC1D,MAAM,SAAS,GAAG,IAAI,CAAC,oBAAoB,IAAI,wCAA6B,CAAC;IAC7E,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC/B,IAAA,+BAAkB,EAAC,OAAO,EAAE,2BAA2B,CAAC,CAAC;IAEzD,+EAA+E;IAC/E,2BAA2B;IAC3B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAS,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACrE,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACjC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,aAAa;YAAE,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,YAAY,GAAG,MAAM,IAAA,qBAAQ,EAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,GAAG,KAAK,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAsB,CAAC;IACzE,MAAM,YAAY,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAsB,CAAC;IAE/E,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,IAAI,EAAkB,EAAE;QACxD,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAsB,CAAC;QACrE,MAAM,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAsB,CAAC,CAAC;QAE7F,2EAA2E;QAC3E,MAAM,UAAU,GAAG,IAAA,4BAAgB,EAAC,WAAW,EAAE,SAAS,CAAC,GAAG,IAAA,4BAAgB,EAAC,WAAW,EAAE,YAAY,CAAC,CAAC;QAC1G,MAAM,OAAO,GAAiB;YAC5B,EAAE,EAAE,UAAU;YACd,GAAG,EAAE,IAAA,6BAAgB,EAAC,WAAW,EAAE,YAAY,CAAC;YAChD,OAAO,EAAE,IAAA,wBAAW,EAAC,WAAW,EAAE,YAAY,EAAE,SAAS,CAAC;YAC1D,KAAK,EAAE,IAAA,gCAAmB,EAAC,YAAY,CAAC,MAAM,CAAC;SAChD,CAAC;QACF,MAAM,SAAS,GAAG,IAAA,yBAAY,EAAC,OAAO,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;QAC7D,OAAO;YACL,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,OAAO;YACP,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,KAAK,EAAE,IAAA,2BAAc,EAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC;SAClD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;AAClD,CAAC;AA1CD,8DA0CC;AAED,SAAS,eAAe,CAAC,QAAkC;IACzD,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;QAClG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACjB,CAAC;AACH,CAAC"}
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
* and never causal attribution.
|
|
27
27
|
*/
|
|
28
28
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
|
-
exports.scoreMargin = exports.pairwiseSimilarity = exports.structuralProximity = exports.scoreInfluence = exports.persistence = exports.finalAnswerSimilarity = exports.compositeScore = exports.averageRelevancy = exports.adaptWeights = exports.embeddingCache = exports.EmbeddingCache = exports.contentHash = exports.ratioStrategy = exports.rankingConfidence = exports.marginStrategy = exports.DEFAULT_SHORTLIST_BAND = exports.DEFAULT_PERSISTENCE_THRESHOLD = exports.DEFAULT_MARGIN_THRESHOLD = exports.DEFAULT_INFLUENCE_WEIGHTS = exports.DEFAULT_CLEAR_WINNER_RATIO = exports.DEFAULT_CLEAR_WINNER_MARGIN = void 0;
|
|
29
|
+
exports.scoreMargin = exports.pairwiseSimilarity = exports.structuralProximity = exports.scoreInfluence = exports.persistence = exports.finalAnswerSimilarity = exports.compositeScore = exports.averageRelevancy = exports.adaptWeights = exports.embeddingCache = exports.EmbeddingCache = exports.contentHash = exports.scoreContrastiveInfluence = exports.ratioStrategy = exports.rankingConfidence = exports.marginStrategy = exports.DEFAULT_SHORTLIST_BAND = exports.DEFAULT_PERSISTENCE_THRESHOLD = exports.DEFAULT_MARGIN_THRESHOLD = exports.DEFAULT_INFLUENCE_WEIGHTS = exports.DEFAULT_CLEAR_WINNER_RATIO = exports.DEFAULT_CLEAR_WINNER_MARGIN = void 0;
|
|
30
30
|
var types_js_1 = require("./types.js");
|
|
31
31
|
Object.defineProperty(exports, "DEFAULT_CLEAR_WINNER_MARGIN", { enumerable: true, get: function () { return types_js_1.DEFAULT_CLEAR_WINNER_MARGIN; } });
|
|
32
32
|
Object.defineProperty(exports, "DEFAULT_CLEAR_WINNER_RATIO", { enumerable: true, get: function () { return types_js_1.DEFAULT_CLEAR_WINNER_RATIO; } });
|
|
@@ -38,6 +38,8 @@ var attributability_js_1 = require("./attributability.js");
|
|
|
38
38
|
Object.defineProperty(exports, "marginStrategy", { enumerable: true, get: function () { return attributability_js_1.marginStrategy; } });
|
|
39
39
|
Object.defineProperty(exports, "rankingConfidence", { enumerable: true, get: function () { return attributability_js_1.rankingConfidence; } });
|
|
40
40
|
Object.defineProperty(exports, "ratioStrategy", { enumerable: true, get: function () { return attributability_js_1.ratioStrategy; } });
|
|
41
|
+
var contrastive_js_1 = require("./contrastive.js");
|
|
42
|
+
Object.defineProperty(exports, "scoreContrastiveInfluence", { enumerable: true, get: function () { return contrastive_js_1.scoreContrastiveInfluence; } });
|
|
41
43
|
var cache_js_1 = require("./cache.js");
|
|
42
44
|
Object.defineProperty(exports, "contentHash", { enumerable: true, get: function () { return cache_js_1.contentHash; } });
|
|
43
45
|
Object.defineProperty(exports, "EmbeddingCache", { enumerable: true, get: function () { return cache_js_1.EmbeddingCache; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/influence-core/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AAmBH,uCAOoB;AANlB,uHAAA,2BAA2B,OAAA;AAC3B,sHAAA,0BAA0B,OAAA;AAC1B,qHAAA,yBAAyB,OAAA;AACzB,oHAAA,wBAAwB,OAAA;AACxB,yHAAA,6BAA6B,OAAA;AAC7B,kHAAA,sBAAsB,OAAA;AAGxB,2DAK8B;AAJ5B,oHAAA,cAAc,OAAA;AACd,uHAAA,iBAAiB,OAAA;AACjB,mHAAA,aAAa,OAAA;AAIf,uCAMoB;AALlB,uGAAA,WAAW,OAAA;AACX,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AAKhB,2CASsB;AARpB,0GAAA,YAAY,OAAA;AACZ,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,mHAAA,qBAAqB,OAAA;AACrB,yGAAA,WAAW,OAAA;AACX,4GAAA,cAAc,OAAA;AACd,iHAAA,mBAAmB,OAAA;AAIrB,iDAAkF;AAAzE,mHAAA,kBAAkB,OAAA;AAE3B,yCAAgE;AAAvD,wGAAA,WAAW,OAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/lib/influence-core/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;;;AAmBH,uCAOoB;AANlB,uHAAA,2BAA2B,OAAA;AAC3B,sHAAA,0BAA0B,OAAA;AAC1B,qHAAA,yBAAyB,OAAA;AACzB,oHAAA,wBAAwB,OAAA;AACxB,yHAAA,6BAA6B,OAAA;AAC7B,kHAAA,sBAAsB,OAAA;AAGxB,2DAK8B;AAJ5B,oHAAA,cAAc,OAAA;AACd,uHAAA,iBAAiB,OAAA;AACjB,mHAAA,aAAa,OAAA;AAIf,mDAAiG;AAAxF,2HAAA,yBAAyB,OAAA;AAElC,uCAMoB;AALlB,uGAAA,WAAW,OAAA;AACX,0GAAA,cAAc,OAAA;AACd,0GAAA,cAAc,OAAA;AAKhB,2CASsB;AARpB,0GAAA,YAAY,OAAA;AACZ,8GAAA,gBAAgB,OAAA;AAChB,4GAAA,cAAc,OAAA;AACd,mHAAA,qBAAqB,OAAA;AACrB,yGAAA,WAAW,OAAA;AACX,4GAAA,cAAc,OAAA;AACd,iHAAA,mBAAmB,OAAA;AAIrB,iDAAkF;AAAzE,mHAAA,kBAAkB,OAAA;AAE3B,yCAAgE;AAAvD,wGAAA,WAAW,OAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.scoreInfluence = exports.compositeScore = exports.adaptWeights = exports.structuralProximity = exports.persistence = exports.averageRelevancy = exports.finalAnswerSimilarity = void 0;
|
|
3
|
+
exports.assertValidWeights = exports.embedAll = exports.scoreInfluence = exports.compositeScore = exports.adaptWeights = exports.structuralProximity = exports.persistence = exports.averageRelevancy = exports.finalAnswerSimilarity = void 0;
|
|
4
4
|
/**
|
|
5
5
|
* FDL influence signals — the four-signal composite from the Visible
|
|
6
6
|
* Reasoning paper (Eq. 1–6), extracted verbatim as RFC-003 block D6.
|
|
@@ -213,6 +213,7 @@ async function embedAll(embedder, texts, signal) {
|
|
|
213
213
|
byText.set(texts[i], vectors[i]);
|
|
214
214
|
return byText;
|
|
215
215
|
}
|
|
216
|
+
exports.embedAll = embedAll;
|
|
216
217
|
async function sequentialEmbed(embedder, texts, signal) {
|
|
217
218
|
const out = [];
|
|
218
219
|
for (const text of texts) {
|
|
@@ -220,16 +221,22 @@ async function sequentialEmbed(embedder, texts, signal) {
|
|
|
220
221
|
}
|
|
221
222
|
return out;
|
|
222
223
|
}
|
|
223
|
-
|
|
224
|
+
/**
|
|
225
|
+
* Validate composite weights: every weight finite & non-negative, and not all
|
|
226
|
+
* zero. Shared by `scoreInfluence` and `scoreContrastiveInfluence` — `fnName`
|
|
227
|
+
* attributes the error to the actual caller.
|
|
228
|
+
*/
|
|
229
|
+
function assertValidWeights(weights, fnName = 'scoreInfluence') {
|
|
224
230
|
for (const [name, value] of Object.entries(weights)) {
|
|
225
231
|
if (!Number.isFinite(value) || value < 0) {
|
|
226
|
-
throw new Error(
|
|
232
|
+
throw new Error(`${fnName}: weight '${name}' must be a finite non-negative number (got ${value})`);
|
|
227
233
|
}
|
|
228
234
|
}
|
|
229
235
|
if (weights.fa + weights.avg + weights.persist + weights.depth === 0) {
|
|
230
|
-
throw new Error(
|
|
236
|
+
throw new Error(`${fnName}: all weights are zero — the composite would always be 0`);
|
|
231
237
|
}
|
|
232
238
|
}
|
|
239
|
+
exports.assertValidWeights = assertValidWeights;
|
|
233
240
|
function assertUniqueIds(evidence) {
|
|
234
241
|
const seen = new Set();
|
|
235
242
|
for (const item of evidence) {
|