export interface BuildExecutorPromptOptions { /** The eval's `prompt` field, verbatim — the task the executor must perform. */ task: string; /** Path to the staged subject (skill/plugin under test). */ subjectPath: string; /** `/` when the eval declares input `files` — the project the executor should operate on. */ workspaceDir?: string; } /** * Build the prompt handed to the blind executor subagent (issue #145 — * transcript-grounded eval rewrite). The executor is a real worker, not a * participant in an eval: it receives the task and its working context ONLY, * phrased exactly as a genuine user request. It must NEVER be told (directly * or by implication) that it is being tested, evaluated, or graded — that * knowledge would change its behavior and invalidate the eval. * * `subjectPath` is where the skill/plugin under test is staged (context the * executor's environment provides); `workspaceDir`, when the eval declares * input `files`, is the project the executor is actually meant to operate on. * * Pure function: same inputs always produce the same prompt. */ export declare function buildExecutorPrompt(opts: BuildExecutorPromptOptions): string; /** * Invariants for the executor prompt. Two guarantees: * * 1. **Task-present**: `task` must be non-empty and appear verbatim in * `prompt` — the executor is a real worker, so the adopter's task text * must actually reach it. * 2. **No blinding-breaker in OUR scaffolding**: the denylist * ({@link BLINDING_BREAKERS}) is scanned ONLY against the prompt's * scaffolding — the prompt with the adopter's `task` text removed. The * adopter's task is arbitrary and may legitimately contain words like * "grading" or "you are being evaluated" (e.g. an essay-grading skill); * policing it would be a false positive. The invariant's real job is to * catch OUR builder accidentally telling the executor it is under test. * * Throws `PromptInvariantError` on violation. */ export declare function assertExecutorPromptInvariants(prompt: string, task: string): void; //# sourceMappingURL=executor-prompt.d.ts.map