/** * Casts — curated model sets for fusion runs (E002 Inc 01). Fusion-first * means the operator never assembles a panel by hand: a cast names the * architect + builder (+ judge) per tier, per provider. * * The table is DATA, editable via `~/.openkai/config.json` ("casts" key); * every cast entry must resolve against the provider's bundled catalogue at * use time — an unresolvable cast is skipped with a named error, never a * silent fallback. */ export type CastTier = "cheap" | "balanced" | "frontier"; export interface Cast { id: string; tier: CastTier; provider: string; architectModel: string; builderModel: string; judgeModel?: string; label: string; } /** The config slice casts read (supplied by the caller — no file I/O here). */ export interface CastConfig { casts?: Cast[]; defaultCast?: string; } /** * The built-in casts. Self-pairing tiers (same model twice) exist because * role separation alone delivers most of the lift (E016); split-model tiers * are the fusion-first default. */ export declare const BUILTIN_CASTS: readonly Cast[]; /** All casts: operator-configured casts override built-ins by id. */ export declare function listCasts(config?: CastConfig): Cast[]; /** Resolve one cast by id (or the default: config, then `balanced`, else first). */ export declare function resolveCast(id?: string, config?: CastConfig): Cast | undefined; //# sourceMappingURL=casts.d.ts.map