agentfootprint
Version:
The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.
27 lines • 1.41 kB
TypeScript
/**
* Arm validation — the teaching refusals.
*
* Every refusal here fires BEFORE a single model call. That is the whole design
* rule: an incoherent comparison must cost nothing. The engine's other refusals
* (an unstable baseline, an arm that did not take effect) can only be known
* after the runs, and those refuse a VERDICT rather than throw — refusing after
* spending N model calls would be hostile. These six can be known from the
* declaration alone, so they throw.
*/
import type { ArmFacets, StrategyArm } from './types.js';
/**
* A canonical key for one arm's CONFIGURATION (facets + removals), used only to
* detect two arms that are secretly the same arm. Hand-rolled rather than
* `JSON.stringify` because key order in an object literal is authoring
* accident, and two arms written `{model, scorer}` and `{scorer, model}` are
* the same arm.
*/
export declare function armConfigKey(arm: StrategyArm): string;
/** How many facet leaves an arm declares — 0 means it names no configuration. */
export declare function declaredFacetCount(facets: ArmFacets | undefined): number;
/**
* Refuse every comparison that cannot mean anything, and resolve which arm is
* the incumbent. Returns the resolved baseline arm id.
*/
export declare function validateStrategyArms(arms: readonly StrategyArm[], baselineArmId: string | undefined): string;
//# sourceMappingURL=validate.d.ts.map