/** * xray Nucleus — thinDispatch (Phase 1E) * * Stable nucleus surface for complexity scoring and agent routing. * Wraps ComplexityAnalyzer; delegates routing to complexity-core utilities. * * Import from here or from delegation/index.ts (which re-exports these). */ import { ComplexityMetrics, ComplexityScore, ComplexityLevel, ComplexityThresholds } from "../delegation/complexity-core.js"; import type { MemorySignalLessons } from "../memory-routing/types.js"; export type { ComplexityMetrics, ComplexityScore, ComplexityLevel, ComplexityThresholds }; export declare const NUCLEUS_THIN_DISPATCH_VERSION = "0.1.0"; /** * Score the complexity of an operation given its description and context. * Primary entry point for thinDispatch complexity scoring in the nucleus. */ export declare function scoreComplexity(operation: string, context: unknown, thresholds?: ComplexityThresholds): ComplexityScore; /** * Route a complexity score / level to the appropriate agent type. * Uses core complexity-core mappings (tier → agent). */ export declare function routeToAgent(scoreOrLevel: number | ComplexityScore, level?: ComplexityLevel): string; /** * Convenience: score first, then route — one call. * One named card: the route is that card's first file, and the agent is not the researcher. * Two names stay quiet. A look that names no plane stops. Repertoire may still change the agent when a law matches. */ export declare function scoreAndRoute(operation: string, context: unknown, thresholds?: ComplexityThresholds): { score: ComplexityScore; agent: string; file?: string; lens?: string; memoryRouting?: { providerId: string; adjustedScore: number; signals: string[]; overridden: boolean; lessons?: MemorySignalLessons[]; }; };