import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { z } from 'zod'; export declare const BENCHMARK_THREAD_POLICY_ENV = "CORTEX_BENCHMARK_THREAD_POLICY_PATH"; export declare const MAX_BENCHMARK_HANDOFF_LENGTH = 2000; /** * The document names WHICH trial this is and WHERE its compiler input lives. It carries no role, no * system prompt, no tool list, no plugin dir, no MCP config, no thread template and no compiled * policy: every one of those is composed by the production path and re-derived from * `run_config_path` inside this process. `.strict()` is what makes that a property of the schema * rather than a convention. Design section 16 (16.3.2) PW3 and PW3-NEG. */ declare const policySchema: z.ZodObject<{ schema_version: z.ZodLiteral<"cortex-benchmark-thread-policy/2">; canonical_instruction: z.ZodString; workspace_cwd: z.ZodString; run_config_path: z.ZodString; trial_root: z.ZodString; template: z.ZodUnion, z.ZodLiteral<"benchmark-coder-review-fix">]>; profile_name: z.ZodString; root_run_id: z.ZodString; trajectory_root: z.ZodString; limits: z.ZodObject<{ max_calls: z.ZodLiteral<1>; max_steps: z.ZodNumber; max_cost_usd: z.ZodNumber; deadline_epoch_ms: z.ZodNumber; }, z.core.$strict>; }, z.core.$strict>; type BenchmarkThreadPolicy = Readonly>; export declare function loadBenchmarkThreadPolicy(env?: NodeJS.ProcessEnv): BenchmarkThreadPolicy; interface ProgressHeartbeatExtra { _meta?: { progressToken?: string | number; }; sendNotification(notification: { method: 'notifications/progress'; params: { progressToken: string | number; progress: number; message: string; }; }): Promise; } /** ยง5.6 P7: keep the client-side timeout reset alive while the blocking call is running. */ export declare function startMcpProgressHeartbeat(extra: ProgressHeartbeatExtra, intervalMs?: number): () => void; export declare function registerBenchmarkThreadRunTool(server: McpServer, policy: BenchmarkThreadPolicy, shutdownSignal: AbortSignal): void; export {};