UNPKG

agentfootprint

Version:

The explainable agent framework — backtrack a wrong answer to the exact context that caused it (evidence, not guesses). Built on footprintjs.

52 lines • 2.86 kB
/** * search/served — what the MODEL reads for `checked: 'declared'` once the * funnel has composed it. * * Pattern: one pure projection. * Role: semantics/ layer, pure. * Emits: N/A. * * The typed fields and one static note — no new sentence. `checked` becomes * the composed items (each `what` plus its typed fields); the gaps the model * can act on ride `not_checked` / `cannot_cover` as plain items. Kept OFF what * the model reads, and on the record only: * * • `complete` — a bare `true` beside "nothing found" invites "that's all * there is"; the claim checker reads it from the row; * • the `said` words (a checker's vocabulary) and `quote` (a statement * writer's mark); * • a long list's values — a 500-id population is served as ONE item, its * count and the first {@link LIST_SHOWN} values quoted, so an empty * result never costs the model a 50 KB message. The row keeps every value. * * An absence is served {@link ABSENCE_NOTE_COMPOSED}, not `ABSENCE_NOTE`: the * latter says "nothing was substituted for what was asked", which a declared * default — or an argument-unsent gap served beside it — contradicts. The * result is an ordinary absence (or ledger): every reader that predates * `search` reads it as one. */ import type { ComposedItem } from '../composedCoverage.js'; import type { CoveredResult, CoverageItem, DeclaredCoveredResult, DeclaredToolAbsence, ToolAbsence } from '../types.js'; /** A list longer than this is served as one item: its count and the first few values. */ export declare const LIST_SERVED_WHOLE = 5; /** How many values of a collapsed list are shown. */ export declare const LIST_SHOWN = 3; /** One composed item as the model reads it — the record-only marks removed. */ export declare function servedItem(item: ComposedItem): Record<string, unknown>; /** * The composed items as the model reads them: a run of more than * {@link LIST_SERVED_WHOLE} population items from one argument (a list sent) * becomes one item with its count. */ export declare function servedItems(items: readonly ComposedItem[]): Record<string, unknown>[]; /** The two plain lists composition writes beside `checked`. */ interface PlainLists { readonly notChecked: readonly CoverageItem[]; readonly cannotCover: readonly CoverageItem[]; } /** The composed ledger — `coverage(rows, { checked: 'declared' })` — with its result untouched. */ export declare function servedLedger(ledger: DeclaredCoveredResult, checked: readonly ComposedItem[], lists: PlainLists): CoveredResult; /** The composed absence, keys in the order the tool minted them, with the composed note. */ export declare function servedAbsence(absence: DeclaredToolAbsence, checked: readonly ComposedItem[], lists: PlainLists): ToolAbsence; export {}; //# sourceMappingURL=served.d.ts.map