import type { CharterClarificationRequest } from "audit-tools/shared"; /** * The attention appetite — how many VOI-ranked questions the user will answer this * round. `0` is the autonomous mode (nothing interactive). A finite N takes the top * N of the VOI queue. `"all"` takes every interactive question (attention-rich). */ export type AttentionAppetite = number | "all"; /** How a partitioned queue splits under a given attention appetite. */ export interface AttentionSplit { /** The questions to ASK this round — the top slice of the VOI queue. */ asked: CharterClarificationRequest[]; /** * The questions to WRITE AS FINDINGS this round — everything not asked: the * `finding_only` questions the risk gate downgraded, plus interactive questions * beyond the appetite's cut. Under appetite 0 this is every question. */ banked: CharterClarificationRequest[]; } /** * Split a set of risk-gated questions by the attention appetite. Only `interactive` * questions are eligible to be asked; they are VOI-ranked and the top `appetite` * are `asked`. Everything else (`finding_only`, or interactive-beyond-appetite) is * `banked` as a written finding — so low appetite still gets the HIGHEST-LEVERAGE * questions (VOI order), not merely fewer, and appetite 0 banks everything (the * autonomous mode). Deterministic: same inputs → same split. */ export declare function splitByAttention(requests: CharterClarificationRequest[], appetite: AttentionAppetite): AttentionSplit; //# sourceMappingURL=dials.d.ts.map