agentfootprint
Version:
The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.
111 lines • 11.9 kB
JavaScript
;
/**
* context-bisect — RFC-003 Part B: the contextual-bug LOCALIZER,
* "git bisect for context".
*
* Assembly over shipped pieces: footprintjs 9.8.0's complete causal DAG
* (control edges, honesty markers, `EdgeWeigher` hook) × influence-core
* scoring (D6) × consumer-run counterfactual ablation.
*
* D7 — `llmEdgeWeigher` influence-weighted LLM-call slice edges
* D8 — `localizeContextBug` trigger → slice → ranked suspects → ablation
* D9 — `bisectCulprits` seeded multi-culprit bisection + variance
*
* §B2 claim tiers (spelled out on every type): weights/scores are
* embedding-geometry PROXIES; ablation verdicts are the ONLY causal
* claims; slice completeness is bounded by tracking — and says so.
*
* @beta Beta feature (RFC-003 Part B). The API works and is tested, but
* may change before GA.
*/
Object.defineProperty(exports, "__esModule", { value: true });
exports.bucketByAnchors = exports.assembleTrajectory = exports.variableToBacktrackTrace = exports.traceVariable = exports.joinVariableSlice = exports.buildWriterFrameIndex = exports.walkTrajectory = exports.walkToRoot = exports.DEFAULT_RECENCY_DECAY = exports.shortlistEarlyCulprits = exports.verdictForArm = exports.validateStrategyArms = exports.scoreArmRuns = exports.RUN_CONFIGURED_EVENT = exports.nullBandFrom = exports.matchArm = exports.manifestFromEvents = exports.declaredFacetCount = exports.compareStrategyArms = exports.collectArmRuns = exports.checkArmApplied = exports.checkArmApplication = exports.armLabel = exports.armFacetsFromManifest = exports.armConfigKey = exports.applyArm = exports.rerunWithoutSources = exports.removableSources = exports.MIN_LOOPS_SAVED = exports.classifySuspect = exports.assignCostVerdicts = exports.verdictFor = exports.runAblationProbe = exports.probeFlipped = exports.median = exports.defaultOutcomeComparator = exports.costStatsFrom = exports.applyAblations = exports.ablationForSuspect = exports.sliceToBacktrackTrace = exports.toBacktrackTrace = exports.suspectLabel = exports.localizeContextBug = exports.llmCallIdsFromEvents = exports.formatContextBugReport = exports.defaultSuspectClassifier = exports.runRestorationProbe = exports.findDroppedContext = exports.stepOutputText = exports.llmEdgeWeigher = void 0;
exports.CONTEXT_BISECT_DEFAULTS = exports.bisectCulprits = exports.findLoopHeads = void 0;
var llmEdgeWeigher_js_1 = require("./llmEdgeWeigher.js");
Object.defineProperty(exports, "llmEdgeWeigher", { enumerable: true, get: function () { return llmEdgeWeigher_js_1.llmEdgeWeigher; } });
Object.defineProperty(exports, "stepOutputText", { enumerable: true, get: function () { return llmEdgeWeigher_js_1.stepOutputText; } });
// Interface #3 — missing-context finder (available − sent; confirm by restoration).
var missingContext_js_1 = require("./missingContext.js");
Object.defineProperty(exports, "findDroppedContext", { enumerable: true, get: function () { return missingContext_js_1.findDroppedContext; } });
var restoration_js_1 = require("./restoration.js");
Object.defineProperty(exports, "runRestorationProbe", { enumerable: true, get: function () { return restoration_js_1.runRestorationProbe; } });
var localize_js_1 = require("./localize.js");
Object.defineProperty(exports, "defaultSuspectClassifier", { enumerable: true, get: function () { return localize_js_1.defaultSuspectClassifier; } });
Object.defineProperty(exports, "formatContextBugReport", { enumerable: true, get: function () { return localize_js_1.formatContextBugReport; } });
Object.defineProperty(exports, "llmCallIdsFromEvents", { enumerable: true, get: function () { return localize_js_1.llmCallIdsFromEvents; } });
Object.defineProperty(exports, "localizeContextBug", { enumerable: true, get: function () { return localize_js_1.localizeContextBug; } });
Object.defineProperty(exports, "suspectLabel", { enumerable: true, get: function () { return localize_js_1.suspectLabel; } });
var toBacktrackTrace_js_1 = require("./toBacktrackTrace.js");
Object.defineProperty(exports, "toBacktrackTrace", { enumerable: true, get: function () { return toBacktrackTrace_js_1.toBacktrackTrace; } });
// sliceToBacktrackTrace — the STRUCTURAL sibling: a footprintjs variable
// slice (sliceToJSON) on the same atui board, honestly weaker chips.
var sliceToBacktrackTrace_js_1 = require("./sliceToBacktrackTrace.js");
Object.defineProperty(exports, "sliceToBacktrackTrace", { enumerable: true, get: function () { return sliceToBacktrackTrace_js_1.sliceToBacktrackTrace; } });
var ablation_js_1 = require("./ablation.js");
Object.defineProperty(exports, "ablationForSuspect", { enumerable: true, get: function () { return ablation_js_1.ablationForSuspect; } });
Object.defineProperty(exports, "applyAblations", { enumerable: true, get: function () { return ablation_js_1.applyAblations; } });
Object.defineProperty(exports, "costStatsFrom", { enumerable: true, get: function () { return ablation_js_1.costStatsFrom; } });
Object.defineProperty(exports, "defaultOutcomeComparator", { enumerable: true, get: function () { return ablation_js_1.defaultOutcomeComparator; } });
Object.defineProperty(exports, "median", { enumerable: true, get: function () { return ablation_js_1.median; } });
Object.defineProperty(exports, "probeFlipped", { enumerable: true, get: function () { return ablation_js_1.probeFlipped; } });
Object.defineProperty(exports, "runAblationProbe", { enumerable: true, get: function () { return ablation_js_1.runAblationProbe; } });
Object.defineProperty(exports, "verdictFor", { enumerable: true, get: function () { return ablation_js_1.verdictFor; } });
// Two-score localization (proposal 004): the COST score + the 2×2 classifier.
var cost_js_1 = require("./cost.js");
Object.defineProperty(exports, "assignCostVerdicts", { enumerable: true, get: function () { return cost_js_1.assignCostVerdicts; } });
Object.defineProperty(exports, "classifySuspect", { enumerable: true, get: function () { return cost_js_1.classifySuspect; } });
Object.defineProperty(exports, "MIN_LOOPS_SAVED", { enumerable: true, get: function () { return cost_js_1.MIN_LOOPS_SAVED; } });
// The counterfactual re-run as one call — the product loop over the ablation
// machinery (wraps applyAblations/runAblationProbe; no new machinery).
var rerun_js_1 = require("./rerun.js");
Object.defineProperty(exports, "removableSources", { enumerable: true, get: function () { return rerun_js_1.removableSources; } });
Object.defineProperty(exports, "rerunWithoutSources", { enumerable: true, get: function () { return rerun_js_1.rerunWithoutSources; } });
// Strategy arms — the SUBSTITUTION tier. Ablation removes; an arm REPLACES, so
// it is a sibling spec type rather than a fifth `AblationSpec` kind (the union
// feeds a subset search that substitutions do not compose under). Statistics
// shared, search machinery not. See src/context-bisect/arms/README.md.
var index_js_1 = require("./arms/index.js");
Object.defineProperty(exports, "applyArm", { enumerable: true, get: function () { return index_js_1.applyArm; } });
Object.defineProperty(exports, "armConfigKey", { enumerable: true, get: function () { return index_js_1.armConfigKey; } });
Object.defineProperty(exports, "armFacetsFromManifest", { enumerable: true, get: function () { return index_js_1.armFacetsFromManifest; } });
Object.defineProperty(exports, "armLabel", { enumerable: true, get: function () { return index_js_1.armLabel; } });
Object.defineProperty(exports, "checkArmApplication", { enumerable: true, get: function () { return index_js_1.checkArmApplication; } });
Object.defineProperty(exports, "checkArmApplied", { enumerable: true, get: function () { return index_js_1.checkArmApplied; } });
Object.defineProperty(exports, "collectArmRuns", { enumerable: true, get: function () { return index_js_1.collectArmRuns; } });
Object.defineProperty(exports, "compareStrategyArms", { enumerable: true, get: function () { return index_js_1.compareStrategyArms; } });
Object.defineProperty(exports, "declaredFacetCount", { enumerable: true, get: function () { return index_js_1.declaredFacetCount; } });
Object.defineProperty(exports, "manifestFromEvents", { enumerable: true, get: function () { return index_js_1.manifestFromEvents; } });
Object.defineProperty(exports, "matchArm", { enumerable: true, get: function () { return index_js_1.matchArm; } });
Object.defineProperty(exports, "nullBandFrom", { enumerable: true, get: function () { return index_js_1.nullBandFrom; } });
Object.defineProperty(exports, "RUN_CONFIGURED_EVENT", { enumerable: true, get: function () { return index_js_1.RUN_CONFIGURED_EVENT; } });
Object.defineProperty(exports, "scoreArmRuns", { enumerable: true, get: function () { return index_js_1.scoreArmRuns; } });
Object.defineProperty(exports, "validateStrategyArms", { enumerable: true, get: function () { return index_js_1.validateStrategyArms; } });
Object.defineProperty(exports, "verdictForArm", { enumerable: true, get: function () { return index_js_1.verdictForArm; } });
// Per-loop recall shortlist (proposal 006, L3): rescue early culprits → narrow before ablation.
var loop_recall_js_1 = require("./loop-recall.js");
Object.defineProperty(exports, "shortlistEarlyCulprits", { enumerable: true, get: function () { return loop_recall_js_1.shortlistEarlyCulprits; } });
Object.defineProperty(exports, "DEFAULT_RECENCY_DECAY", { enumerable: true, get: function () { return loop_recall_js_1.DEFAULT_RECENCY_DECAY; } });
// Root-cause backtracking debugger (proposal 007, L4): walk symptom → root (narrow → hop → convict).
var walk_to_root_js_1 = require("./walk-to-root.js");
Object.defineProperty(exports, "walkToRoot", { enumerable: true, get: function () { return walk_to_root_js_1.walkToRoot; } });
Object.defineProperty(exports, "walkTrajectory", { enumerable: true, get: function () { return walk_to_root_js_1.walkTrajectory; } });
Object.defineProperty(exports, "buildWriterFrameIndex", { enumerable: true, get: function () { return walk_to_root_js_1.buildWriterFrameIndex; } });
// variable-recall (7.12): footprintjs's variable slices joined to agent
// vocabulary — loops, suspect identities, ablation hooks. Pure assembly; it is
// what lets the walk narrow by RECORDED dataflow instead of text similarity.
var variable_recall_js_1 = require("./variable-recall.js");
Object.defineProperty(exports, "joinVariableSlice", { enumerable: true, get: function () { return variable_recall_js_1.joinVariableSlice; } });
Object.defineProperty(exports, "traceVariable", { enumerable: true, get: function () { return variable_recall_js_1.traceVariable; } });
var variableToBacktrackTrace_js_1 = require("./variableToBacktrackTrace.js");
Object.defineProperty(exports, "variableToBacktrackTrace", { enumerable: true, get: function () { return variableToBacktrackTrace_js_1.variableToBacktrackTrace; } });
// Per-loop trajectory assembler (proposal 005): segmentation core (phase 1)
// + the agent-flavored projection (phase 2).
var trajectory_js_1 = require("./trajectory.js");
Object.defineProperty(exports, "assembleTrajectory", { enumerable: true, get: function () { return trajectory_js_1.assembleTrajectory; } });
Object.defineProperty(exports, "bucketByAnchors", { enumerable: true, get: function () { return trajectory_js_1.bucketByAnchors; } });
Object.defineProperty(exports, "findLoopHeads", { enumerable: true, get: function () { return trajectory_js_1.findLoopHeads; } });
var bisect_js_1 = require("./bisect.js");
Object.defineProperty(exports, "bisectCulprits", { enumerable: true, get: function () { return bisect_js_1.bisectCulprits; } });
var types_js_1 = require("./types.js");
Object.defineProperty(exports, "CONTEXT_BISECT_DEFAULTS", { enumerable: true, get: function () { return types_js_1.CONTEXT_BISECT_DEFAULTS; } });
//# sourceMappingURL=index.js.map