/** * Allocation-model — a PURE, deterministic over-allocation detector. No I/O, no * Date, no Math.random. * * Identity fidelity, motion boldness, and scene density compete for one * generation's fidelity budget; a shot that demands a perfect face AND a backflip * AND a crowded market AND readable on-screen text lands none of them cleanly * (allocation-model.md). This warns when a single packet over-allocates. * * Conservative by design (low false-positive): it fires only when * ≥ ALLOCATION_DEMAND_THRESHOLD of the four competing demands are present, and the * cue sets are STRICT operator-content phrases that the toolchain's own standing * blocks (SUBJECT LOCK / CAPTURE REALISM / CAMERA CAPTURE / "no on-screen text") * do not contain — so assembled packets never self-trigger. * * Harvested from the MIT `Emily2040/seedance-2.0` allocation-model (@63b32dc). */ export interface AllocationSpend { spend: string; buys: string; strains: string; } /** The three competing spends (reference data, verbatim from the doc). */ export declare const ALLOCATION_SPENDS: readonly AllocationSpend[]; export interface AllocationTrade { ifNeeds: string; paysWith: string; } /** The trade table (reference data). */ export declare const ALLOCATION_TRADES: readonly AllocationTrade[]; export type AllocationDemand = 'identity-detail' | 'bold-motion' | 'scene-density' | 'readable-text'; export declare const ALLOCATION_DEMAND_THRESHOLD = 3; export interface AllocationAdvisory { code: 'allocation'; severity: 'warning'; message: string; } /** Which competing demands are clearly present (strict cues), canonical order. */ export declare function detectAllocationDemands(promptText: string): AllocationDemand[]; /** * Warn when a single packet collides ≥ ALLOCATION_DEMAND_THRESHOLD competing * demands. Pure: depends only on its argument. */ export declare function analyzeAllocation(promptText: string): AllocationAdvisory[]; //# sourceMappingURL=allocation-model.d.ts.map